箭头函数 用法

§§ --- es6/arrow.md

§§ 1000

+# 箭头函数

+

+## 一、定义

+

+箭头函数(Arrow Function)是 ES6 新增的函数,它的语法比较简洁,大大减少了 JavaScript 代码量。

+

+## 二、语法

+

+```js

+// 一个参数

+(param1) => {

+ statements

+}

+

+// 多个参数

+(param1, param2, ...) => {

+ statements

+}

+

+// 无参数

+() => {

+ statements

+}

+```

+

+## 三、用法

+

+### 1、简化函数

+

+```js

+function fn1() {

+ console.log('fn1')

+}

+

+// 简写

+const fn2 = () => {

+ console.log('fn2')

+}

+```

+

+### 2、简化回调函数

+

+```js

+// 传统写法

+[1, 2, 3].forEach(function (item) {

+ console.log(item)

+})

+

+// 简写

+[1, 2, 3].forEach(item => console.log(item))

+```

+

+### 3、this 指向

+

+ES6 中箭头函数里的 this 指向的是外围作用域,而不是指向调用者,因此 this 在箭头函数中是不会改变的。

+

+```js

+// 传统写法

+const obj = {

+ name: 'obj',

+ fn1: function () {

+ setTimeout(function () {

+ console.log(this.name) // undefined

+ }, 0)

+ },

+ fn2: function () {

+ setTimeout(() => {

+ console.log(this.name) // obj

+ }, 0)

+ }

+}

+```

+

+### 4、简化 Promise

+

+```js

+// 传统写法

+fetch('/user.json')

+ .then(function (res) {

+ return res.json()

+ })

+ .then(function (data) {

+ console.log(data)

+ })

+

+// 简写

+fetch('/user.json')

+ .then(res => res.json())

+ .then(data => console.log(data))

+```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值