有什么理由应该使用一个而不是另一个吗?
例如:
var arData=['a','b','c']; arData.slice(1,1);//removes 'b' var arData=['a','b','c']; delete arData[1];//removes 'b'
发布于 2012-04-26 07:07:07
delete留给您的是[ 'a', undefined, 'c' ]
delete
[ 'a', undefined, 'c' ]
splice留给您的是[ 'a', 'c' ]
splice
[ 'a', 'c' ]
slice不会对原始数组做任何操作:),但它会在代码中返回[ 'b' ]
slice
[ 'b' ]
发布于 2012-04-26 07:08:20
delete仅将该数组的特定位置设为undefined,但该数组仍包含3项:['a',undefined,'c']
undefined
['a',undefined,'c']
另一种方法是使用splice而不是slice。splice完全删除了该项目及其位置,因此最终得到了['a','c']
['a','c']
https://stackoverflow.com/questions/10325026
相似问题