如何从在JavaScript foreach循环中删除特定数组元素 [英] How to delete specific array elements from within a foreach loop in javascript
本文介绍了如何从在JavaScript foreach循环中删除特定数组元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
VAR果= [苹果,梨花,黄花梨,梨花,香蕉];
我如何从这个数组中删除所有的鸭梨水果?结果
我尝试以下,但还有一梨仍然是:
为(以水果变种F){
如果(水果[F] ==鸭梨){
fruit.splice(F,1);
}
}对于(水果变种F){
的document.write(水果[F] +< BR>中);
}
输出:
苹果
梨
香蕉
我是什么做错了吗?现场演示: http://jsfiddle.net/SbxHc/
解决方案
VAR果= [苹果,梨花,黄花梨,梨花,香蕉] ,
一世;对于(i = 0; I< fruit.length ++我){
如果(水果[I] ===鸭梨){
fruit.splice(我 - ,1);
}
}的console.log(水果);
// [苹果,香蕉]
var fruit = ["apple","pear","pear","pear","banana"];
How do I remove all "pear" fruit from this array?
I tried the following, but still one pear remains:
for(var f in fruit) {
if ( fruit[f] == "pear" ) {
fruit.splice(f, 1);
}
}
for(var f in fruit) {
document.write(fruit[f]+"<br>");
}
Outputs:
apple
pear
banana
What am I doing wrong? Live demo: http://jsfiddle.net/SbxHc/
解决方案
var fruit = ["apple", "pear", "pear", "pear", "banana"],
i;
for (i = 0; i < fruit.length; ++i) {
if (fruit[i] === "pear") {
fruit.splice(i--, 1);
}
}
console.log(fruit);
//["apple", "banana"]
这篇关于如何从在JavaScript foreach循环中删除特定数组元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文