所以...我有这个数组:
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”方法实际上不会修改原始数组,所以请不要建议它。 :)
答案 0 :(得分:3)
splice
方法实际上会修改数组。试试吧:
val['an_element'][0]['another_element'].splice(2, 1);
来自the docs:
更改数组的内容,在删除旧元素时添加新元素 ...
如果指定要插入的元素数量与要删除的数量不同,则数组在调用结束时的长度将不同。