箭头函数
时间: 2023-07-18 09:21:39 浏览: 254
箭头函数是 JavaScript ES6 新增的一种函数声明方式,它可以更简洁和清晰地定义函数,并且可以避免 this 的指向问题。
箭头函数的语法如下:
```javascript
(argument1, argument2, ...) => {
// 函数体
}
```
其中 `argument1, argument2, ...` 是函数的参数列表,可以是多个参数,也可以没有参数。如果只有一个参数,可以省略括号。`=>` 是箭头函数的标识符,用于连接参数列表和函数体。函数体可以是一条语句或多条语句,如果只有一条语句,则可以省略花括号。
例如,下面是一个简单的箭头函数示例:
```javascript
const sum = (a, b) => a + b;
console.log(sum(1, 2)); // 输出: 3
```
在上面的例子中,箭头函数 `sum` 接收两个参数 `a` 和 `b`,返回它们的和。由于函数体只有一条语句,所以可以省略花括号。
另外,箭头函数还有一些特殊的用法,例如可以用于简化回调函数、处理 this 指向等问题。需要注意的是,箭头函数的 this 指向是继承自父级作用域,而不是动态绑定的。
相关问题
关于箭头函数,下面说法正确的有() 当箭头函数的形参只有一个的时候可以省略小括号 箭头函数内部没有 arguments 箭头函数里的this指向window 箭头函数里的this指向自己
当箭头函数的形参只有一个的时候可以省略小括号是正确的。箭头函数内部没有 arguments 也是正确的,因为箭头函数没有自己的 this 和 arguments。箭头函数里的 this 指向的是定义时所在的作用域中的 this,而不是调用时的 this,因此箭头函数里的 this 不会指向 window。箭头函数里的 this 指向的是定义时所在的作用域中的 this,而不是指向自己,因此这个说法是错误的。
箭头函数里面不能包箭头函数吗
箭头函数里面可以包含箭头函数。例如:
```
const outerFunc = () => {
const innerFunc = () => {
console.log('Inner function');
}
innerFunc();
}
outerFunc(); // Output: Inner function
```
在这个例子中,`outerFunc` 是一个箭头函数,它包含了一个叫做 `innerFunc` 的箭头函数。当 `outerFunc` 被调用时,它会执行 `innerFunc` 函数,并输出 "Inner function"。因此,箭头函数里面可以包含其他箭头函数。
阅读全文