删除基于JSON文件的JS Object属性

delete JS Object attributes based on a JSON file

本文关键字:JS Object 属性 文件 JSON 删除      更新时间:2023-09-26

我需要删除某些对象的某些属性,例如:

objA = { firstAttrA: 'fooA', secondAttrA: 'barA' }
objB = { firstAttrB: 'fooB', secondAttrB: 'barB' }

我想在一个函数中传递这些对象,该函数将基于以下属性文件删除firststattra和firststattrb:

{
    "objA":"firstAttrA",
    "objB":"firstAttrB"
} 

方法需要是健壮的,我需要避免过度的循环和任何会影响性能的东西,因为本质上要传递的对象数量很大,它们的属性也很多。

本质上我想我需要做一个delete objA.firstAttrA; delete objB.firstAttrB;,但由JSON属性文件驱动。

如果在全局作用域中定义,那么你的方法应该是这样的:

var objRef = {
    "objA":"firstAttrA",
    "objB":"firstAttrB"
};
for (var item in objRef) {
    if (window.hasOwnProperty(item)) {
        if (window[item].hasOwnProperty(objRef[item])) {
            delete window[item][objRef[item]];
        }
    }
}
相关文章: