首页 > 其他 > 详细

ES6 function函数和箭头函数区别

时间:2020-02-13 23:24:42      阅读:130      评论:0      收藏:0      [点我收藏+]

1.写法不一样

//function
function fn(a,b){
return a+b
}
//arrow function
var foo = (a,b)=>{
return a+b
}

  

2.this的指向,function中的this可变(window,内部),箭头函数固定不变指向window

function foo(){
console.log(this)
}
var obj = {aa:foo}
foo() //window
obj.aa()//obj

var foo = ()=>{
console.log(this)
}
var obj = {aa:foo}
foo()//window
obj.aa()//window

  

3.构造函数

function Person(name,age){
this.name =name
this.age = age
}
var lenhart = new Person(lenhart,25)
console.log(lenhart) //成功

var Person = (name,age)=>{
this.name = name
this.age=age
}
var lenhart = new Person(‘lenhart‘,25) //Uncaught TypeError: Person is not a constructor

  

4.变量提升

foo()
function foo(){
console.log(‘123456‘)
}
arrowFn()//Uncaught TypeError: arrowFn is not a constructor
var arrowFn=()=>{
console.log(‘123456‘)
}

  

ES6 function函数和箭头函数区别

原文:https://www.cnblogs.com/fm060/p/12305473.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!