LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 420|回复: 0

箭头函数

[复制链接]
发表于 2024-2-19 23:00:37 | 显示全部楼层 |阅读模式
创建函数还有另外一种非常简单的语法,并且这种方法通常比函数表达式更好。

它被称为“箭头函数”,因为它看起来像这样:

let func = (arg1, arg2, ..., argN) => expression;
这里创建了一个函数 func,它接受参数 arg1..argN,然后使用参数对右侧的 expression 求值并返回其结果。

换句话说,它是下面这段代码的更短的版本:

let func = function(arg1, arg2, ..., argN) {
  return expression;
};
让我们来看一个具体的例子:

let sum = (a, b) => a + b;

/* 这个箭头函数是下面这个函数的更短的版本:

let sum = function(a, b) {
  return a + b;
};
*/

alert( sum(1, 2) ); // 3
可以看到 (a, b) => a + b 表示一个函数接受两个名为 a 和 b 的参数。在执行时,它将对表达式 a + b 求值,并返回计算结果。

如果我们只有一个参数,还可以省略掉参数外的圆括号,使代码更短。

例如:

let double = n => n * 2;
// 差不多等同于:let double = function(n) { return n * 2 }

alert( double(3) ); // 6
如果没有参数,括号则是空的(但括号必须保留):

let sayHi = () => alert("Hello!");

sayHi();
箭头函数可以像函数表达式一样使用。

例如,动态创建一个函数:

let age = prompt("What is your age?", 18);

let welcome = (age < 18) ?
  () => alert('Hello!') :
  () => alert("Greetings!");

welcome();
一开始,箭头函数可能看起来并不熟悉,也不容易读懂,但一旦我们看习惯了之后,这种情况很快就会改变。

箭头函数对于简单的单行行为(action)来说非常方便,尤其是当我们懒得打太多字的时候。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表