javascript – 如何获取对象数组中的对象的索引?

前端之家收集整理的这篇文章主要介绍了javascript – 如何获取对象数组中的对象的索引?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个这样的 JavaScript对象数组:
Box[0] = {...}
Box[1] = {...}
Box[2] = {...}
...
Box[499] = {...}

此对象由相同的构造函数生成,并添加到循环内的数组中.这些对象在原型中有方法,需要知道数组中的对象的索引来做它们的东西.目前我正在做的是在循环中创建它时,在每个对象内设置一个名为id的属性,等于数组索引.这样的事情

Box[i].id = i;

但是我并不完全满意,因为每次使用sort()对数组进行重新排序时,我必须运行一个循环,以使用新的索引值更新id属性.

我的问题是如果有一种方法来知道一个对象中的数组中的索引,而不必设置id属性,希望你能帮助我.

提前致谢.

解决方法

我不认为Array中的对象内的函数将会意识到引用它的Array的索引.

因为Array中的每个项目都只是简单地指向内存中的对象,所以可以想象到引用同一对象的数十个数组项,变量,对象属性等,所以函数(或包含函数的对象)不知道你希望做出什么回溯参考.

如果您需要知道其在数组中的索引,我猜你会坚持做你正在做的事情.

我想这个函数可以对Array调用indexOf(),因为它返回一个索引,但是每次调用都需要一些开销,你需要将它添加到不受支持的浏览器中.

theArr.indexOf( this ); // assuming the function was called from the context
                        //   of the object in question
原文链接:https://www.f2er.com/js/153588.html

猜你在找的JavaScript相关文章