js箭头函数的写法
JS箭头函数的写法
JavaScript的箭头函数(Arrow Function)是一种简化代码的语法糖。其特点是函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。在实际开发过程中,箭头函数的使用频率越来越高。下面是其写法详解。
1. 语法基本形式
箭头函数的语法形式可以简单归纳为以下几种:
// 箭头函数表达式形式
() => {}
// 箭头函数省略小括号的形式
val => {}
// 箭头函数多参数形式
(name, age) => {}
// 箭头函数具有返回值形式
num => num * 2
2. 箭头函数的参数
箭头函数在声明时,可以通过小括号包含一个或多个参数,用逗号分隔。如下例子:
// 一个参数
(num) => num * 2;
javascript基本特点 // 两个参数
(name, age) => name + age;
如果仅有一个参数,可以省略参数的小括号,但若没有参数则需要使用空的小括号。如下例子:
// 一个参数的省略小括号形式
num => num * 2;
// 没有参数则需要加上空小括号
() => console.log('Hello World!');
3. 箭头函数的函数体
箭头函数的函数体通常使用大括号包含一段代码块,如果函数是单一表达式的话,那么可以省略大括号和return关键字。如下例子:
// 不省略大括号写法
(num) => {
const result = num * 2;
return result;
}
// 省略大括号的写法
num => num * 2;
4. 箭头函数与普通函数的区别
箭头函数的特点在于this与函数定义时的上下文环境绑定,这与普通的函数是有区别的。普通函数的this值会在运行时被推算出来,箭头函数中不存在这种运行时的绑定,所以箭头函数的this绑定只能是词法上的。
另外,由于函数体内的this对象不再是变化的,使用call()或apply()无法改变this的指向。如下例子:
const obj = {
name: '张三',
say1: function () {
setTimeout(function () {
console.log(this); // window
}, 1000);
},
say2: function () {
setTimeout(() => {
console.log(this); // obj
}, 1000);
},
};
obj.say1();
obj.say2();
5. 总结
箭头函数是一项强大的ES6语言特性,其语法简洁明了,相信大家都能很容易上手使用它。它不仅可以简化代码的书写,更能帮助开发者避免一些单词拼写错误和this指针的纠错工作。因此,在项目开发过程中,多多使用箭头函数是一种非常好的编码习惯。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论