首页 > 分享 > JS中=>是什么意思?箭头函数是什么?

JS中=>是什么意思?箭头函数是什么?

概述

JS中=>是箭头函数,是ES6标准中新增的一种新的函数。箭头函数表达式的语法比函数表达式更简洁,并且没有自己的this,arguments,super或new.target。箭头函数表达式更适用于那些本来需要匿名函数的地方,并且它不能用作构造函数。

基础语法

(param1, param2, …, paramN) => { statements }
(param1, param2, …, paramN) => expression
//相当于:(param1, param2, …, paramN) =>{ return expression; }
// 当只有一个参数时,圆括号是可选的:
(singleParam) => { statements }
singleParam => {statements }
// 没有参数的函数应该写成一对圆括号:
() => { statements }

简单示例

x => x * x 1'

即相当于:

function (x) { return x * x;} 123

更短的函数示例

var elements = [ 'Hydrogen', 'Helium', 'Lithium', 'Beryllium' ]; elements.map(function(element) { return element.length; }); // 返回数组:[8, 6, 7, 9] // 上面的普通函数可以改写成如下的箭头函数 elements.map((element) => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数只有一个参数时,可以省略参数的圆括号 elements.map(element => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数的函数体只有一个 `return` 语句时,可以省略 `return` 关键字和方法体的花括号 elements.map(element => element.length); // [8, 6, 7, 9] // 在这个例子中,因为我们只需要 `length` 属性,所以可以使用参数解构 // 需要注意的是字符串 `"length"` 是我们想要获得的属性的名称,而 `lengthFooBArX` 则只是个变量名, // 可以替换成任意合法的变量名 elements.map(({ "length": lengthFooBArX }) => lengthFooBArX); // [8, 6, 7, 9]

12345678910111213141516171819202122232425262728'

三元运算符示例

箭头函数也可以使用条件(三元)运算符:

var simple = a => a > 15 ? 15 : a; simple(16); // 15 simple(10); // 10 let max = (a, b) => a > b ? a : b; 12345'

不与new一起使用

箭头函数不能用作构造器,和 new一起用会抛出错误。

var Foo = () => {}; var foo = new Foo(); // TypeError: Foo is not a constructor 12

没有prototype属性

箭头函数没有prototype属性。

var Foo = () => {}; console.log(Foo.prototype); // undefined 12'

函数体

箭头函数可以有一个“简写体”或常见的“块体”。

在一个简写体中,只需要一个表达式,并附加一个隐式的返回值。在块体中,必须使用明确的return语句。

var func = x => x * x; // 简写函数 省略return(简写体) var func = (x, y) => { return x + y; }; //常规编写 明确的返回值(块体) 12345'

箭头函数递归

var fact = (x) => ( x==0 ? 1 : x*fact(x-1) ); fact(5); // 120 12'

浏览器兼容性

在这里插入图片描述

结语

更多关于箭头函数的详细介绍可参看JS最新的参考文档:箭头函数 - JavaScript 。

记录仓促,如有错误或不足之处,还望指正。

相关知识

js(=>) 箭头函数 详细解说 案例大全
es6 =>是什么意思
ES6箭头函数总结
js水仙花数原理
手机数字键盘纯js模拟资源
=a在c语言中是什么意?c!=a在c语言中是什么意思 爱问知识人
楼盘中空中花园是什么意思
送女孩满天星是什么意思
JS中 let 和var的区别
奇花异草是什么意思(奇花异草是什么意思的异是什么意思)

网址: JS中=>是什么意思?箭头函数是什么? https://m.huajiangbk.com/newsview1225861.html

所属分类:花卉
上一篇: 揭秘34种花的寓意与花期,带你踏
下一篇: 生活中的象征意义(花木、动物)