如何从数组中删除数组?
这里是我的数组:如何从数组中删除数组?
var myarray = [["d1", "sections/Dashboard-summary.html", "Dashboard"],
["add", null, ""],
["20", "sections/MW-1-summary.html", "MW-1"],
["21", "sections/SB-5-summary.html", "SB-5"]]
如何删除第二个元素["add", null, ""]
,使新的阵列是
[["d1", "sections/Dashboard-summary.html?781", "Dashboard"],
["20", "sections/MW-1-summary.html?903", "MW-1"],
["21", "sections/SB-5-summary.html?539", "SB-5"]]
该元素可能无法始终处于第二的位置,但它的第一个值将永远是“添加”。如何删除“添加”的第一个值(myarray[1][0])
的数组?
该元素可能并不总是处于第二位置,但其第一个值将始终为“添加”。如何删除“添加”的第一个值
(myarray[1][0])
的数组?
使用与splice()
循环。
for (var i = 0, myarrayLength = myarray.length; i < myarrayLength; i++) {
if (myarray[i][0] === 'add') {
myarray.splice(i, 1);
break;
}
}
[请避免w3schools](http://w3fools.com)。 [MDC](https://developer.mozilla.org/en/JavaScript/Guide)是一个更好的JavaScript参考源,在这种情况下请参阅['Array.splice()'](https://developer.mozilla .ORG/EN/JavaScript的/参考/ Global_Objects /阵列/拼接)。 – 2011-04-21 02:04:25
当您知道要移除的元素的位置时,拼接起作用。但在我的情况下,空的元素不会总是处于第二个位置。我如何找到空的元素并将其删除? – GravyPlaya 2011-04-21 18:05:03
你可以遍历循环,看看'typeof(myarray [i])==“undefined”'。 – 2011-04-21 18:46:10
可以完全除去它(慢):
myarray.splice(1, 1);
可以从数组中删除它,并且在它离开一个 “洞”(左位置1未定义):
delete myarray[1];
这是否需要是一个数组?对于这种事情,最好使用链表。否则,您必须编写代码来遍历数组,找到条目,创建一个更小的新数组,然后复制所有信息减去“add”。 – Genzume 2011-04-21 01:33:44
@Tyler:这是JavaScript。数组是列表。 – 2011-04-21 01:43:20
@Matt是的,你是对的。出于某种原因,我完全忘记了这个事实。好点子。 – Genzume 2011-04-21 03:42:01