假设我有一个名为MyArray
的对象数组,并且某个函数返回该数组中特定元素的引用;像这样的东西:
MyArray = [Object1, Object2, ..., Objectn];
function DoWork() {
var TheObject = GetTheObject(SomeParamter);
}
此时,TheObject
指向数组中的某个元素。假设我想从MyArray
中删除此元素,这是否可能无需重新遍历数组以获取元素的索引?
我正在寻找类似于splice的东西,它可以使用对元素的引用而不是元素的索引。
答案 0 :(得分:32)
let index = MyArray.indexOf(TheObject);
if(index !== -1) {
MyArray.splice(index, 1);
}
请注意,如果定位IE< 9你需要为indexOf
引入一个polyfill;您可以在MDN页面中找到one。