00:00
那第七个函数的的默认值。或者是说函数的参数的默认值哈,我们先把这文件创建出来。好,那既然是函数的参数默认值,首先必须得有个函数,三个。啊然后呢,我们return先return一个100啊方呢,我们给它起个名字吧,比如说叫加法看好我re,对,然后呢,我先呢来调用一下这个函数,那既然它有return,就说明呢它是有返回值的,那它有返回值呢,我就先let。然后呢,嗯叫result吧,嗯等于爱好文呢,先把这个result打印一下,Can收点好,那接下来呢,我们来运行一下NO07好,大家看不出意外的话,那他肯定打印100好,现在呢,我们来加一个参数。
01:08
它的参数的话,比如说你这块写A吧。100加A啊,先问大家一个问题,就是。圣诞会不会报错?现在我运行会不会报错?你你们自己思考一下,我来运行一下,然后在你的心里给我一个答案,好,我来运行,大家看没有搞错。没有报错啊,但是呢,它打印了一个叫做na的这样的一个结果,Na是什么呢。叫做not a number not number明白吧,所以呢,叫na啊,Not a number对吧?Na na,好,那就说明它不是一个数,那大家看是不是说在我们的javascript当中,如果你的。
02:08
实际调用这个函数的时候,和形式上定义这个函数的时候,它的参数列表如果不匹配的话,它实际上依然可以调用啊,只不过是没有这个A定义进来啊,那这个A现在是什么呢?你们可以打印一下。A啊,我这样写吧,A啊A好,A是然后呢,我们来看一下。来看一下啊,好,那么是不是A是undein呀,好,我们用一个100去加上一个undein unde find本身它就不是一个数字嘛,就是它什么都不是好,然后所以得到的结果呢,就是嗯嗯。得到结果就是an,同样如果在这个地方,我们给它传递一个参数,比如说100,那么这个就显而易见了,它得到的值是什么呀?
03:08
是200倍对不对,那么再给大家扩充一下,就是这个地方呢,我呢,再定一个这样的一个函数,好,那下面我打印的应该是什么。是100。啊,这个是刚才我们说的200。还是前面我们说的na。然后大家自己,你自己想一下啊,然后你自己心里给你。给你自己一个答案,然后现在呢,我来运行一下,你看一看你的答案呢,是不是正确的好。大家看啊,我看一下啊。A4。啊,首先这这个地方我先不不打印,先把这个屏蔽掉,因为这里面没有A,是不是没有A啊,我先把这个删掉行吧?啊好,然后呢,大家想一想啊,我现在是称。
04:09
这个还是这个。行吧,啊,我哪个纸,我用这个调用啊,我的是这个还是等一下啊,我看看我刚才写的那个是。啊对行,把这删掉啊好,这块我再改一下吧,改成十吧,好,那如果要是调用这个的话,应该叫什么。这个是十对吧,应该得一百一吧,好,那我如果调用这个的话,应该得什么。这十能传进去吗?传不进去,那应该等100对吧,所以说那最后应该等于一还是等于100,我们来运行一下。等于100,有很多同学可能会认为得110。啊,是不是有很多同学可能会认为得110,如果你还记得你们之前javascript学习的过程当中有一个非常重要的概念叫什么呀?是不是叫javascript没有函数的重载啊?
05:08
所谓的没有函数的存在,就是后定义的生效,后定义的把先定义的覆盖掉了,所以呢,在当前我们这段代码当中,根本就不存在前面的这个函数,只有后面的这个函数啊,而我们在这个十传递进去的时候呢,因为它没有定义形式参数,所以这个十呢,根本就没有接收进来,但是呢,它依然会正常的执行这个里面的方法体,所以最后返回来的呢,是100啊,这是我们对函数的一个理解,也就是说一定要注意它没有函数的重载,好,那接下来呢,刚才我们提到的就是什么,就是它没定义你传了。那就就就接不进来啊,目前为止我们所了解的情况,当然如果我们学高级的扎的话,其实是有其他的方法把这个十接进来的,那这块我就不给大家深入去讲解了,我们现在来说什么呢?就是定义了你没传的情况,什么叫定义了你没传呢?我把这个给它屏蔽掉,比如说我这边呢是A加B啊,然后这边呢,还有个BA。
06:13
好,然后我这100加A加B是吧,好,接下来呢,还是还是这个值,还是这个值,我们先来看一下它运行的结果是什么,这个运行结果大家应该能猜到啊,想一想,呃,I的我调用的肯定是它了,然后呢,这个十我是传递给了。好,这个十不是传递给了A,而这个B因为这边没有实际参数,所以应该是的,那这样的话加起来看看结果。加起来是不是还是我们知道的这个n na啊好,那现在呢,我有另外一个方法,就是我不想让它的结果是na,如果这个B我没传,那我就忽略它,你至少要把100加A的结果给我算出来,那这个时候呢,我们可以给自己一个默认值,这默认值呢可以是零啊这样的话呢,我们再来运行一下这车,大家看啊,这个时候呢,就是一百一了啊,这样的话啊,就是如果你传了A,那么就是加上A,如果你传了B20对吧。
07:25
来看结果,那么就是加上A和B的值,如果你没传B,那么就是只加A,是这意思吧,这样的话呢,如果B不传不会影响你的结果啊,因为呃,正常情况下你不传的话,它就会是n na了,对不对,这不是我们要的啊,好,那所以这个就是默认值的作用啊。
我来说两句