JavaScript中的indexOf(object)

桑格拉姆·辛格

以下代码中的错误:-

var x = [{id: 'abc'}, {id: 'xyz'}];

var index = x.indexOf({id: 'abc'});

上面的语法是什么?

不是黑暗的绝对

仅当对象引用对象的完全相同的实例时,它们才彼此相等。

您将需要实现自己的搜索功能。例如:

Array.prototype.indexOfObject = function(obj) {
    var l = this.length, i, k, ok;
    for( i=0; i<l; i++) {
        ok = true;
        for( k in obj) if( obj.hasOwnProperty(k)) {
            if( this[i][k] !== obj[k]) {
                ok = false;
                break;
            }
        }
        if( ok) return i;
    }
    return -1; // no match
};

var x = [{id: 'abc'}, {id: 'xyz'}];
var index = x.indexOfObject({id: 'abc'}); // 0

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章