我正在尝试创建20个存储在变量中的函数。每个数字都将特定数量的数字加到另一数量上。这是一个示例:
p
在这种情况下:
array
输出应为25
那么,如何在不创建数组的情况下创建这20个变量? (我尝试过,它可以工作) 谢谢,这只是出于好奇。
答案 0 :(得分:0)
尝试以下
function creaSuma(x){
return function(y){
return x + y;
}
}
for(let i=1; i<21; i++){
window['add' + i] = creaSuma(i); //this doesn't work. How would you change it?
}
console.log(add15(10));
将输出25
我正在使用窗口进行动态变量命名,因为它引用了您正在使用的所有全局变量和全局函数。
您可以选择使用与自定义对象相同的方法。
答案 1 :(得分:0)
正如我在原始帖子的评论中提到的,请使用一个对象,并将其作为对象的动态属性/字段。
这是您修改的代码:
function creaSuma(x) {
return function (y) {
return x + y;
}
}
var x = function () {
}
for (let i = 1; i < 21; i++) {
x['add' + i] = creaSuma(i); //this doesn't work. How would you change it?
}
console.log(x.add15(10));