分享更有价值
被信任是一种快乐

es5函数和es6箭头函数有哪些区别

文章页正文上

本篇内容介绍了“es5函数和es6箭头函数有哪些区别”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 区别:1、写法不同,ES6箭头函数为“() => {}”,ES5函数为“function funName(){}”;2、let绑定不同,当函数只有一个参数时,箭头函数可以省略括号,当函数只返回一个值时,箭头函数可以省略花括号;3、this指向不同,es5函数指向该函数被调用的对象,箭头函数则是定义时this的指向,即指向全局window对象。es6箭头函数箭头函数是es6当中对函数的一种全新表示法。其将函数的简洁性发扬到了极致!先来看一个最简单的箭头函数:

letfn=a=>a
varm=prompt()
alert(fn(m))

初次接触箭头函数的人可能会为其简洁性的语法而惊讶!来和es5的语法做一下比较

letfn=function(a){
returna;
}
varm=prompt()
alert(fn(m))

es5函数和es6箭头函数的区别E免费云主机、域名S3、ES5普通函数 : function a(){}ES6箭头函数: () => {};举个例子,通过map方法将原数组“映射”成对应的新数组:

//ES3,ES5写法
vara=[1,2,3,4,5];
varb=a.map(function(i){
returni+1
});
console.log(a,b);

控制台结果

//ES6写法
leta=[1,2,3,4,5];
letb=a.map(i=>i+1)
console.log(a,b);

控制台结果:总结:箭头函数和普通函数在再于let的绑定;当函数只有一个参数时,可以省略括号,当函数只返回一个值时,可以省略花括号然后~这里还要说下关于箭头函数this指向问题。注意:普通函数this指向:是该函数被调用的的对象,箭头函数:定义时this的指向(指向全局window对象)再举个例子:

//ES3,ES5
functionfoo(){
this.a='a';
this.b='b';
this.c={
a:'a+',
b:function(){
returnthis.a
}
}
}
console.log(newfoo().c.b());

//ES6
functionfoo2(){
this.a='a';
this.b='b';
this.c={
a:'a+',
b:()=>{
returnthis.a
}
}
}
console.log(newfoo2().c.b());

控制台效果:这里可以看到实例化一个foo对象后,调用c对象里面的b方法。在普通函数this指向的是该函数被调用的对象,也就是c对象,所以输出a+。而在ES6箭头函数中,函数体内的this.a是构造函数foo定义的this.a,所以输出a。“es5函数和es6箭头函数有哪些区别”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注云技术网站,小编将为大家输出更多高质量的实用文章!

相关推荐: vue静态路由如何写

这篇“vue静态路由如何写”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue静态路由如何写”文章吧。 Vue是一款流行的JavaScript框…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册