我也许有初学者Javascript问题:
var countries = [
"Bangladesh", "Germany", "Pakistan"];
function testexistence(arr, input) {
for (var i = 0; i < arr.length; i++) {
if (arr[i] != input) {
alert("not exist");
arr.push(input);
break;
} else {
alert("already exist ");
}
}
}
testexistence(countries, "UK");
testexistence(countries, "Pakistan");
testexistence(countries, "UK");
我期望的是:当我再次为“ UK”调用该函数时,它表明我“已经存在”;但这没有发生。我不想玩“原型”或定义自己的原型。我只需要一种解决方案。
我的代码中有一个用例,其中我必须在数组中插入一个新值,在下一个循环中,我必须检查该值;但我最终要插入一个现有值...
为什么我最终要插入现有值,为什么此检查
(arr[i] != input)
失败?还请解释一下,为什么上面的代码无法按预期工作
最佳答案
您需要搜索整个数组,然后才能确定它不存在。
我可能会用testexistence
而不是addUnique
命名。