如何从Javascript数组中删除节点
所以…我有一个数组:如何从Javascript数组中删除节点,javascript,arrays,element,Javascript,Arrays,Element,所以…我有一个数组: val['an_element'][0]['another_element'][2]['text'] 我想去掉整个“2”节点 现在…我想这样做的方法是: delete val['an_element'][0]['another_element'][2]; 但是…它实际上并没有删除元素,只是将其清空 我还尝试: val['an_element'][0]['another_element'][2] = null; …但这只会导致我的控制台日志几乎流血,它因错误而变得通红
val['an_element'][0]['another_element'][2]['text']
我想去掉整个“2”节点
现在…我想这样做的方法是:
delete val['an_element'][0]['another_element'][2];
但是…它实际上并没有删除元素,只是将其清空
我还尝试:
val['an_element'][0]['another_element'][2] = null;
…但这只会导致我的控制台日志几乎流血,它因错误而变得通红
基本上,我希望[2]节点不再存在。基本上,我不想让人找到它
我该怎么办???我知道“.splice”方法实际上不会修改原始数组,所以请不要建议使用它。:) 实际上,
splice
方法将修改数组。试试看:
val['an_element'][0]['another_element'].splice(2, 1);
发件人:
更改数组的内容,在删除旧元素的同时添加新元素。…
如果指定要插入的元素数与要删除的元素数不同,则数组在调用结束时的长度将不同
splice是一个Mutator函数,它将更改原始数组,因此您的数组实际上是
val['an_元素][0]['anu元素]]
,包含具有text
属性的对象?可能重复,请注意slice
和splice
之间的区别!可能重复的