箭头函数和普通函数的区别

今天开始学习微信小程序了,昨晚提前看了一些,感觉相比Vue好理解许多,可能是因为学了Vue的缘故吧。
看到了箭头函数和普通函数的区别,突然发现脑子里没有这个概念,只能想出好像不用写this就能调用数据还是什么,也不知道该怎么说,趁午休时间来查一下。

箭头函数

引入箭头函数的作用

  • 更简短的函数并且不绑定this。

这也是肉眼可见的区别

//普通函数
function funcName(params) {
   return params + 2;
 }
funcName(2);//4
//箭头函数
var funcName = (params) => params + 2
funcName(2);// 4

连大括弧都省了

第一次接触时只是感受到少写了个function,取而代之的是 => 这样一个箭头,看上去好像简洁了许多,当时讲的时候给我的印象也只有可以不使用this(刚才简单的看了下文章感觉还是只有这点印象)

再仔细看一下

  • 箭头函数看上去只是语法的变动,其实也影响了this的作用域。

这段应该也有理解,大概就是用了箭头函数可以更方便的摸到本应该摸到的地方(好像有点绕,基本知识还是不够扎实)

没有局部this的绑定

  • 箭头函数不会绑定this。 或则说箭头函数不会改变this本来的绑定。
  • 箭头函数不会创建自己的this,它只会从自己的作用域链的上一层继承this。
  • 箭头函数不绑定Arguments 对象。

这里面有很多箭头函数的属性和要注意的地方,不过很多地方我还看不懂
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions

再做几句从网上看到的摘抄

  • 使用箭头函数就不会导致this被绑定到全局对象。

参考文章
转载时请注明作者 Fundebug以及本文地址:
https://blog.fundebug.com/2017/05/25/arrow-function-for-beginner/

里面有有关测试this绑定指向的代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值