gpt4 book ai didi

javascript - 为什么对象键没有从对象中删除?

转载 作者:行者123 更新时间:2023-11-28 15:11:15 25 4
gpt4 key购买 nike

我的演示中有一个对象。

var vm = {
a: {
module: "not test"
},
b: {
module: "test"
}
}

我需要删除具有“test”模块名称的对象的键。

预期输出

vm = {
a: {
module: "not test"
}
}

这是一个 fiddle :https://jsfiddle.net/kymdsj1s/

这是我的代码。我使用了 delete 关键字,但它对我不起作用。

var tempModule = "test";
var vm = {
a: {
module: "not test"
},
b: {
module: "test"
}
}

deleteItem(tempModule)

function deleteItem(moduleName) {
if (Object.key(vm) == moduleName)
delete vm
}

console.log(vm)

最佳答案

您正在调用delete vm,这不会删除您期望的内容 - vm 是您的整个 View 模型对象,如果您想删除b code> 它的属性您可以尝试如下:

var tempModule = 'test';
var vm = {
a: { module: 'not test' },
b: { module: 'test' }
};

function deleteItem(moduleName) {
for (var key in vm) {
if (vm.hasOwnProperty(key) && vm[key]['module'] === moduleName) {
delete vm[key];
}
}
}

deleteItem(tempModule);
console.log(vm);

这是 updated fiddle .

关于javascript - 为什么对象键没有从对象中删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36374502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com