我是JavaScript新手,我试图只使用FOR LOOP和brake& amp;来打印数组中的两个元素。继续陈述
例如我想要打印3和8
我试过了:
var array= [1,2,3,4,5,6,7,8];
for (var i = 0; i < array.length; i++) {
if (i == 3) {
alert(i);
continue;
}
if ( i == 8) {
alert(i);
}
}
答案 0 :(得分:0)
所有数组都从3 == 3
的第一个位置开始,然后从那里开始。因此,在您的代码中,您认为自己正在比较2 == 3
,但实际上您正在比较var array = [1, 2, 3, 4, 5, 6, 7, 8];
for (var i = 0; i < array.length; i++) {
if (array[i] == 3) {
alert(array[i]);
}
else if (array[i] == 8) {
alert(array[i]);
}
}
。如果比较数组位置值而不是循环值,则问题将得到解决。
var getManager = function (functionName, contentDiv) {
console.log("aircraft manager refresh called");
$.ajax({
type: "GET",
url: '@Url.Action(functionName, "AdminTools")',
cache: false,
data: {},
error: function () {
alert("An error occurred.");
},
success: function (data) {
$("#".concat(contentDiv)).html(data);
}
});
}
答案 1 :(得分:0)
如果需要检查数组中的值而不是索引,请尝试使用此方法。 Imo,数组中的值不必与索引值相似,它们可以是任何值。
var array= [1,2,3,4,5,6,7,8];
for(var i = 0; i < array.length; i++)
{
if (array[i]== 3 || array[i] == 8)
{
alert(array[i]);
}
}
答案 2 :(得分:0)
如何使用filter
?
const array = [1,2,3,4,5,6,7,8];
const matches = array.filter(a => a === 3 || a === 8);
console.log(matches[0], matches[1]);
// The filter uses the lambda function. It's the same thing as the following:
const matches = array.filter(function(a) {
return a === 3 || a === 8;
});