我正在尝试将一些项目推送到不同的数组中。目前我可以使用if语句,如果我有太多的数组?我如何使用动态变量将元素推入数组?
答案 0 :(得分:0)
使用引用您的数组的 Object (或作为您创建它们的原始容器)。
var env = { // var a = [0, 2, 4], b = [1, 3, 5],
'foo': [0, 2, 4], // env = {};
'bar': [1, 3, 5] // env['foo'] = a;
}; // env['bar'] = b;
function addToArr(k, x) { // `k` string key, `x` item to append
env[k].push(x); // push `x` into array ref `env[k]`
}
addToArr('foo', 6); // example usage
addToArr('bar', 7);
env; // result
/* {
"foo": [0, 2, 4, 6], // === a
"bar": [1, 3, 5, 7] // === b
} */
当然,您可以使用任何您喜欢的逻辑来获取对象的键以及功能决定使用哪个。