箭头函数用法
1 箭头函数是什么?
箭头函数是ES6中新增的一种函数写法,也被称为“Lambda函数”或“函数的快捷写法”,它可以简化函数的书写和阅读。
2 箭头函数的语法格式
箭头函数的语法格式如下:
```javascript
(参数1, 参数2, ..., 参数N) => { 函数体 }
```
当函数体只有一句语句时,可以省略大括号:
```javascript
(参数1, 参数2, ..., 参数N) => 表达式
```
当函数只有一个参数时,括号可以省略:
```javascript
参数 => 表达式
```
3 箭头函数的特点
箭头函数具有以下特点:
- 箭头函数的this指向父级作用域的this;
- 箭头函数不能使用arguments对象,可以使用rest参数代替;
- 箭头函数没有prototype属性,不能作为构造函数使用;
- 箭头函数不能使用yield关键字,不能用作generator函数;
- 箭头函数没有自己的绑定this的能力,无法使用call()、apply()、bind()方法来改变this的值。
4 箭头函数的应用场景
4.1 简化回调函数的写法
在ES6之前,我们常常需要定义一个回调函数来传给一个函数,例如:
```javascript
setInterval(function(){
console.log('hello')
函数prototype}, 1000);
```
而使用箭头函数可以更加简洁明了:
```javascript
setInterval(() => console.log('hello'), 1000);
```
4.2 当函数内部还有函数时
在深层嵌套的函数中,如果需要引用外部函数的this,则需要定义一个变量来保存外部函数的this,例如:
```javascript
var self = this;
function outer() {
function inner() {
console.log(self); //输出外部函数的this
}
}
```
而使用箭头函数可以省略外部函数this变量的定义:
```javascript
function outer() {
const inner = () => {
console.log(this); //输出outer函数的this
}
}
```
5 总结
箭头函数是ES6中新增的一种函数写法,可简化函数的书写和阅读,在一些应用场景下具有巨大的优势。但需要注意的是,箭头函数不能完全替代传统函数的所有用法,应结合实际情况使用。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论