遍历JS对象并确认其属性之一

时间:2018-11-29 19:29:30

标签: javascript object iteration

我有一个javascript对象

loadData() {
    var self = this;

    this.myDatabaseService.get(this.myApiPath)
        .subscribe
        (
            data => {
                this.setCollectionView(data);
                this.m_collectionView.trackChanges = true;

                //// for loop was not needed ////
            },
            errorCode => {
                // this.statusMessage = "";
            }
        );
}

稍后将windowTest初始化如下:

gui: {
    windowTest: {},
    draw: function() { ... }
}

和Window构造函数...

windowTest = new Window(x,y,w,h);

我如何遍历gui对象并测试:

function Window(x,y,w,h){
    this.m = 0;
    this.x = x;
    this.y = y;
        ...
}

在代码的另一部分?

在浏览了关于遍历JS对象的不同问题之后,我尝试了以下方法:

gui[key].m == this.m-1;

但是它什么也没做。我不知道上面的代码片段做什么,所以我无法调试它。

1 个答案:

答案 0 :(得分:0)

这有效:

for(var key in gui){
    if(!gui.hasOwnProperty(key)) continue;
    if(gui[key].m !== undefined) {
        console.log(gui[key].m);
    }
}

循环浏览对象gui中的所有键,然后确定其中一个键是否具有我要查找的属性,并打印出来。