本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。
es6箭头函数是什么意思
在ES6中,箭头函数是其中最有趣的新增特性。顾名思义,箭头函数是一种使用箭头(=>)定义函数的新语法,但是它与传统的JavaScript函数有些许不同,主要集中在以下方面:
没有this、super、arguments和new.target绑定,其值由外围最近一层非箭头函数决定
不能通过new关键字调用
没有原型
不可以改变this的绑定
不支持arguments对象
不支持重复的命名参数
函数体内的this的指向始终是指向定义它所在的对象,而不会指向调用它的对象,我们知道es5中的函数是谁执行它,它就指向谁。
如下:
var f = v = > v;//等同于var f = function(v){ return v;}var sum = (num1,num2) => num1+num2 ;//等同于var sum = function(num1,num2){ return num1+num2}[1,2,3].map(function (x) { return x * x;});// 箭头函数写法[1,2,3].map(x => x * x);//简洁了许多
从例子我们可以看出,省略了function,花括号‘{}’用‘=>’代替了。这种写法更简洁了。
示例如下;
//1、参数默认值 位置在所有形参的后面 //es6之前的采取的默认值只能变相采取 function test(a,b) { a=a||2; b=b||2; return a*b } console.log(test());//但是这个有弊端 当我们传递的值为0的时候,还是会走默认值。改造之后 function test1(a,b) { a=typeof a==="undefined"?2:a; b=typeof b==="undefined"?2:b; return a*b } console.log(test1(0,0))// es6为我们提供了默认值// 语法糖: function(a,b=2){} let test2=(a=2,b=2) =>{ return a*b }; console.log(test2());
输出结果:
【相关推荐:javascript视频教程、web前端】
以上就是es6箭头函数是什么意思的详细内容,更多请关注php中文网其它相关文章!