我想问一下,除了javascript中的一个特定元素外,还有一种简单的方法可以对数组元素执行操作。
示例:
var myArray = [ 1, 2, 3, 4, 5, 6 ];
我想在除
之外的所有数组元素上运行方法或其他东西myArray.indexOf(myArray[2]);
实现这一目标的最简单方法是什么?感谢。
答案 0 :(得分:2)
为什么不使用伟大的旧for
循环迭代数组并检查匹配的值。
var myArray = [ 1, 2, 3, 4, 5, 6 ];
for(var i = 0, len = myArray.length;i<len;i++) {
if(i!==2) {
// do something..
}
}
答案 1 :(得分:2)
可以是这样的
var exceptionIndex = son value;
var myArray = [ 1, 2, 3, 4, 5, 6 ];
function someFunction(index){
myArray.splice(index,1);
for (var i = 0; i < myArray.length; i++) {
// do something
}
}
someFunction(exceptionIndex);
答案 2 :(得分:1)
您可以像这样使用Array.forEach
myArray.forEach(function(currentValue, currentIndex, actualArray) {
if (currentIndex !== 2) {
...
}
});
forEach
函数将作为参数传递的函数应用于Array的每个值。它将三个参数传递给函数,它们如下
元素值
元素索引
正在遍历的数组
答案 3 :(得分:0)
选项A:
for (var i = 0; i < myArray.length; i++) {
if (i === 2)
continue;
// do something
}
选项B:
myArray.forEach(function(item, index) {
if (index === 2)
return;
// do something
});
答案 4 :(得分:0)
myArray
.filter(function(val, idx) {
return idx !== 2;
})
.forEach(function(val) {
myfunc(val);
})
;