Javascript 数组和循环
2012-07-10
111
我需要帮助才能使我的代码正常工作。我希望能够循环我的数组并使用 if 命令来确保数组存在。
arr = ["1","2","3","4"];
for (var i = 0; i < arr.length; i++) {
if (string != arr[i]) {
//do something
}
}
但是它不起作用。if 命令忽略。
var arr = ["150","-75"];
right = righ + "px";
leftpl=left * 1;
if (left < 325){
leftplu = leftpl + 10; leftplus = leftplu + 'px ';
for (var i = 0; i < arr.length; i++) {
if (leftplus+right != arr[i]){
document.getElementById("new").innerHTML=leftplu+'px ' + righ+'px';
}
}
}
或者我可以将 for 循环放在“if (leftplus+right != arr[i])”中,如“if (leftplus+right != for for (var i = 0; i < arr.length; i++) {arr[i]})”
我很抱歉,因为我理解得不太好。我是 javascript 新手,正在努力学习。
2个回答
将这个:
string != arr[i]
更改为:
typeof arr[i] != "string"
JavaScript 是一种松散类型的语言,因此没有关键字
string
。相反,如上所示,您可以使用
typeof
运算符将其操作数的数据类型作为字符串获取。
进行此更改后,您的最终代码应如下所示:
arr = ["1","2","3","4"];
for (var i = 0; i < arr.length; i++) {
if (typeof arr[i] != "string") {
//do something
}
}
jeff
2012-07-10
此行: “leftplus+right”
包含像“123px456px”这样的字符串,将它们与数组值进行比较是没有意义的……
我猜你的意思是将数字相加,而不是连接这些字符串
ttt
2012-07-10