我想在Jquery中声明一个数组以避免"undefined"
我这样声明:
var array = [""];
但它只适用于第一个循环。
在第二个循环array[1]
中,它返回undefined
。
如何声明数组以避免未定义。
感谢您的帮助。
答案 0 :(得分:1)
var oldVal = '';
var array = oldVal.split(',');
使用“数组”之后,它不会给出“未定义”错误。
答案 1 :(得分:1)
首先,这只是JavaScript,而不是jQuery(在那段代码中没有特定于jQuery的内容)。
如果您知道阵列中的确切项目数,那么您只能实现所要求的内容。您需要创建一个循环来初始化数组中所有项的值。
var numberOfItems = 50;
var myArray[];
for (var i=0; i<numberOfItems; i++) {
myArray.push('');
}
如果您以后想要一个数字系列,也许Underscore.js中的range()
函数也很有用:http://underscorejs.org/#range
答案 2 :(得分:1)
如果你正在使用这个带有for循环和迭代的javascript并且你正在点击“未定义”,那么我能想到的最简单的方法是当你在循环中点击“”时使用break语句走出循环,因此你不会打“未定义”。
答案 3 :(得分:1)
您可以尝试在进入循环之前通过从头开始设置其长度来创建数组:
var i = 35,
myArray = new Array(i);
for (i = 0; i < myArray.length; i++) {
// do something
}
或者您可以验证数组是否包含您尝试使用的元素:
var myArray = [""];
for (var i = 0; i < 10; i++) {
if (myArray[i] === undefined) {
continue;
}
// do something with myArray[i]
}