Javascript对象操作的问题
假设我有一个JavaScript对象,它由几个键/值对的字符串键和JavaScript对象组成Javascript对象操作的问题,javascript,Javascript,假设我有一个JavaScript对象,它由几个键/值对的字符串键和JavaScript对象组成 var obList = { key:{..}, key2:{..}, key3:{..}, ... } 我构造了一个新的集合,obList2 var obList2 = { key:{..}, key2:{..}, key3:{..}, ... } 我想写一个基于obList2修改obList的函数。我遇到问题的第一步是删除obList中所有键不在obList2中的对象。对此的任何想法/实施都会
var obList = { key:{..}, key2:{..}, key3:{..}, ... }
我构造了一个新的集合,obList2
var obList2 = { key:{..}, key2:{..}, key3:{..}, ... }
我想写一个基于obList2修改obList的函数。我遇到问题的第一步是删除obList中所有键不在obList2中的对象。对此的任何想法/实施都会有所帮助。谢谢大家! 可以使用循环在对象上循环,并使用检查属性是否存在 例如:
for (var prop in obList) {
if (obList.hasOwnProperty(prop) && !obList2.hasOwnProperty(prop)) {
delete obList[prop];
}
}
第一个条件是防止修改
对象。原型
,第二个条件检查属性是否不存在于第二个对象上。代码的基本元素:检查对象是否缺少特定键的能力。以下是您的做法:
if (window.bla === undefined) {
console.log("Key bla is missing!")
}
如果一个属性被特别设置为
未定义
,那该怎么办?很好。我不知道它是否实际适用,但我今天确实学到了一些东西-我不再将东西与未定义的东西进行比较:-)。谢谢你,拉杜!伟大的谢谢你的回复。