因此,我知道这与JS中的高阶函数有关,但我只是不明白我们如何在此处传递m
的值。另外,在声明变量greaterThan10
之后,将值传递给它会做什么?
function greaterThan(n) {
return m => m > n;
}
let greaterThan10 = greaterThan(10);
console.log(greaterThan10(11));
// → true
答案 0 :(得分:3)
m => m > n
是函数的简写语法。
这意味着调用greaterThan(10)
将创建一个也可以这样编写的函数:
function greaterThan10(m) {
return m > 10; // this is still `m > n`, however, `n` cannot be changed from outside of the scope
}
基本上,m
是greaterThan(10)
返回的函数的参数,而n
是传递给它的值,在这种情况下为10
。
技术术语为 箭头函数表达式 。您可以在MDN web docs上详细了解它。