【发布时间】:2013-07-15 15:16:21
【问题描述】:
假设我有一个名为MyArray 的对象数组,并且某个函数返回该数组中特定元素的引用;像这样:
MyArray = [Object1, Object2, ..., Objectn];
function DoWork() {
var TheObject = GetTheObject(SomeParamter);
}
此时,TheObject 指向数组中的某个元素。假设我想从MyArray 中删除这个元素,这是否可能无需重新循环通过数组来获取元素的索引?
我正在寻找类似 splice 的东西,它可以使用对元素的引用而不是元素的索引。
【问题讨论】:
-
写入
TheObject = null不会从数组中清除对象。你错了。 -
arr.splice(arr.indexOf(obj), 1);
-
如果应该从数组中删除一个对象,那么您或引擎将无法绕过数组。您可以考虑为
GetTheObject添加一个可选参数,如果true将删除,如果false则保留。 -
@dandavis:你明白了
标签: javascript arrays