00:00
Hello,大家好,那这个小节我们来讲一下呢,ES6里边儿函数参数的默认值。啊,在ES6里边呢,它允许我们给函数的参数赋初始值,这个参数呢,指的是我们的行参,就是声明时那个参数负初始值,来一起来演示一下。行参的一个初始值。啊,我们写一个函数啊,来个ad括弧。啊,我们来生去封装一个呢,三个数的相加啊,这样一个函数啊,A逗号B逗号C啊,然后在这呢,我们return一个。A加上B,然后加上C。好,我们来看结果啊,Let result等于一个ad括弧,一逗号二逗号三。啊,然后打印一下这个结果。保存大家看一下结果呢,是六没有问题啊,那么这个时候呢,如果说我最后一个参数没有传递。
01:03
啊,那么这个时候的话,C的质量是一个unDeFined啊,A加B是三,三加unDeFi是一个an的一个结果。那么在这个时候我们可以呢,给这个函数赋一个初始值,比如说我给它附了一个十。啊,那如果说你要是不传,不传这个参数,那C的默认值就是十,保存看一下13没有问题,其实这个特性呢,在很多语言都有啊,就是给函数形参赋初始值,你如果传了我就用你比如说你传一个三。哎,那就是六,如果你没有传,那好,我就用默认值十。好,那么这块有一个注意点是什么呢?就是具有默认值的这个参数啊,一般位置要靠后。啊,注意是一般啊,这也是一个什么呀,潜规则就是你不放到后边也行。好,就比方说我把这个C呢,我往前面放可不可以啊,哎,可以。
02:04
啊,可以啊,但是就是不合理啊,就是没有这数没有意义,来一起来看一下,比如说你把它放中间了是吧,AB2个参aaaa的前面啊,B在后边,那么这时候传参一二,一给谁啊?一给A,二呢?二给C,那B呢?B又成on find。啊保存你看结果又成了na了,那么这个时候的话,你把它放到中间就没有什么意义。不能说没有意义,意义不大啊,意义不大,为什么呢?因为你要有参数就先把它顶掉了。对吧,后边这哥们呢,依然还是。孤零零的没有人相伴是吧,很尴尬,所以说的话,咱们呢,一般都会把这个具有默认值参数呢往后挪,这样的话它的默认值才会有价值啊好,这是第一个点,那么第二个点呢,就是这个默认值啊,可以与解构赋值结合来使用。与解构赋值结合。
03:03
啊,比如说我举个例子啊,来一个connect。啊,然后在这呢,我写一个options。做一个连接啊,然后我们来调用一下connect括弧,往里面传一个对象啊,看一下host,我写一个local host是吧,然后username用户名啊,写一个这个root。然后password也写一个,也写一个root。然后pot啊,来个端口号。PT。等于一个3306。好,这是呢,我们在调用时传的一个参数,那么在函数内部呢,咱们可以怎么办呢?这咱可以获取一下是吧?Let host等于一个options.host当然得判断是吧,如果说有你才能用,没有的话你就用不了,咱们得这么去做才可以啊,那我们呢,现在是这样去写的,然后获取这个参数,然后下边呢,再来获取另外一个username。
04:02
啊,有点,那你会发现一个问题,啥问题啊,这块内容写重了。啊,注意啊,我再说一遍啊,就是判断这块你先把它放一放,因为这不是我们的主要矛盾啊,我们这重点是介绍参数默认值的,好看一下,Option这块呢,写重了,每次都要写欧,那多难受啊,对不对?所以说我们可以呢,让它跟结构赋值做一个结合。啊,像这样子,我们写一个host,然后username,然后password,再来一个put保存下边呢,咱们用的时候就可以直接这样去用host。然后username还有呢。Pass word以及这个part partt保存看一下啊,这四个值咱们都可以得到,这样的话你用起来就很方便,好,这是一个呃,获取,当然在这咱们还可以呢,给这个属性去付初始值。给属性去赋初始值,比如说我举个例子啊,给host来一个127.0.0.1。
05:04
什么意思呢?就是如果说你在调用的时候,对象里边house属性你没有传。啊,你没有传没关系,看一下啊,没有传的话,我就走这个默认值,如果说你传了,那好,那我就用你说这个at硅谷点com保存,你要是传了我用你没有传我用我的默认值。所以说在默认值这块呢,还可以跟解构赋值做一个结合啊,让咱们呢,一属性用起来更方便,二的话呢,你要是没有传,咱有默认值去做一个设置。好,那么解这个参数的默认值这块呢,我们就先说这么多。
我来说两句