我想制作一个数组如何:
var varOne, varTwo, varThree; // (If vars are == null don't insert on array)
var array = [];
array = [
{"ONE": varOne},
{"TWO": varTwo},
{"THREE": varThree}
];
仅当varOne
,varTwo
和varThree
不是null
祝你好运
答案 0 :(得分:1)
看起来非常自然地使用if
块:
if (varOne !== null) {
array.push({ONE: varOne});
}
等等。
答案 1 :(得分:0)
只需添加到dfsqs的答案,您就可以创建一个函数来获取任意数量的参数,并使用迭代器对每个参数执行空值检查。 (即使用arguments对象 - 请参阅JavaScript variable number of arguments to function) 此代码将为您提供一系列[{&#34; 1&#34;:&#34; x&#34;},{&#34; 2&#34;:&#34; z&#34;}] < / p>
function foo() {
var array = [];
var counter = 0;
for (var i = 0; i < arguments.length; i++) {
if (arguments[i]){
counter++;
var map = {};
map[counter] = arguments[i]
array.push(map);
//document.write(i + " " + arguments[i] + " ");
}
}
return array;
}
var varOne="x";
var varTwo=null;
var varThree="z"; // (If vars are == null don't insert on array)
var array = foo(varOne,varTwo,varThree); //could be as many variables as you like
//document.write(JSON.stringify(array));