ES6箭头函数及给函数形参添加默认参数

1、箭头函数介绍

●  一般的函数:

  

 ● 箭头函数:

  

 ● 可以省略function,然后括号和大括号直接加一个箭头

2、箭头函数的特性:

(1)只有一个形参时,括号可以省略

  

(2)函数{}里只有一句代码或者只有返回值时,{}可以省略

  ● 只有返回值时,return也可以省略掉

  

● 但是当只有返回值时,而且返回值是一个对象的话,因为对象也是用{}包裹起来的,所以如果将函数的{}省略掉,到时候函数执行的时候就会认为{}是函数的,从而对象报错,所以可以在对象{}外面加上();

  

(3)箭头函数没有argument

● argument:有实参,在不写形参的情况下,在函数内部内嵌了一个函数变量就是arguments,打印出来是一个数组,不是真正的数组,是伪数组,来接收实参;

● 一般函数:有argument

  

结果:

 

● 可以通过Array.from(arguments)将伪数组转换为数组

 

● 箭头函数没有argument

  

(4) 箭头函数没有this,箭头函数this是父级作用域的, 

● 一般函数:this指向


    
    

写一个定时器,嵌套在input事件中,此时定时器里的this指向是window,因为是window让定时器function函数执行的,所以this.value值是undefined,那如何实现this指向mytext呢,可以用新变量接收的方法:


    
    

结果:

ES6箭头函数及给函数形参添加默认参数_第1张图片

解释说明:给this赋值变量that,这样this就能指向mytext了,然后再用that获取mytext的value值,input框输入啥就结果就打印啥。

● 箭头函数:


    
    

结果:

ES6箭头函数及给函数形参添加默认参数_第2张图片

解释说明:同样是定时器函数,箭头函数的this指向就是父级mytext,而一般函数是window,这也是箭头函数的一个好处,不用再去多赋值变量了。

3、ES6新增的一个功能:给函数设置默认参数

● 默认情况下:是会传参的

 ● 没有传参的情况下:可以给函数设置默认参数

 ● 在ES6中,一般给函数形参加上默认参数,这样防止忘记传参时的尴尬哈哈哈

你可能感兴趣的:(web前端开发,前端,javascript,开发语言,ecmascript,es6)