40 lines
857 B
JavaScript
40 lines
857 B
JavaScript
|
||
function sum(a){
|
||
return function(b){
|
||
return a + b;
|
||
}
|
||
}
|
||
|
||
console.log(sum(1)(2));
|
||
console.log(sum(5)(-1));
|
||
|
||
|
||
function byField(Field){
|
||
return (a,b) => a[Field] > b[Field]? 1: -1;
|
||
}
|
||
|
||
|
||
function makeArmy() {
|
||
let shooters = [];
|
||
|
||
let i = 0;
|
||
while (i < 10) {
|
||
let id = i;
|
||
let shooter = function() { // 创建一个 shooter 函数,
|
||
console.log( id ); // 应该显示其编号
|
||
};
|
||
shooters.push(shooter); // 将此 shooter 函数添加到数组中
|
||
i++;
|
||
}
|
||
|
||
// ……返回 shooters 数组
|
||
return shooters;
|
||
}
|
||
|
||
let army = makeArmy();
|
||
|
||
// ……所有的 shooter 显示的都是 10,而不是它们的编号 0, 1, 2, 3...
|
||
army[0](); // 编号为 0 的 shooter 显示的是 10
|
||
army[1](); // 编号为 1 的 shooter 显示的是 10
|
||
army[2](); // 10,其他的也是这样。
|