我有一个带有几个元素和一个新元素的简单数组,尝试用一个函数检查元素,将新元素推入该数组(如果尚不存在)并忽略它。
我用if / else语句创建了一个函数,但是代码总是将新项添加到数组中。
var arr=['a','b'];
var newElem='c';
function f(){
for(var i=0; i<arr.length; i++){
if(arr[i] == newElem){ console.log('Exists');return }
else {arr.push(newElem);console.log(arr); return }
}
}
f();
如果新项未出现在数组中,但如果代码存在,新元素仍被推入数组,则代码工作正常 请任何人帮忙,不想问老师,这看起来很简单吗?
答案 0 :(得分:0)
首先检查元素是否存在:
const arr = ['a', 'b'];
const newElem = 'c';
if (arr.indexOf(newElem) === -1) {
arr.push(newElem);
}