正确的循环语法删除对象属性,如果value = x
Proper loop syntax to remove object properties if value = x
假设我有一个这样的对象:
obj = {
property1: "Prop 1 value",
property2: "-",
property3: "Prop 3 value"
property4: "-"
}
如果一个属性的值等于"-",我想把它从对象中删除。
我研究过for循环,但我甚至不知道这是否是处理对象的正确范例。
算法非常简单。迭代对象中的所有属性,检查属性值是否等于"-"
,并将其从对象中删除。
for (var key in obj) {
if (obj[key] === '-')
delete obj[key];
}
带有比较的简单for in循环。
var obj = {
property1: "Prop 1 value",
property2: "-",
property3: "Prop 3 value",
property4: "-"
}
for (var prop in obj) {
if (obj.hasOwnProperty(prop)) {
if (obj[prop]==="-") {
delete obj[prop];
}
}
}
其他选项为Object。带有for循环的键
var obj = {
property1: "Prop 1 value",
property2: "-",
property3: "Prop 3 value",
property4: "-"
}
Object.keys(obj).forEach(function(key) {
if(obj[key]==="-") {
delete obj[key];
}
});
相关文章:
- 如果URL为(value),则使用css类
- 正确的循环语法删除对象属性,如果value = x
- 如果value被选中,PHP下拉列表
- Angular JS过滤器——如果new value为空,就不更新DOM值
- 如果窗口's的宽度小于value,则不运行脚本
- 如果Value等于Anchor's Text,则更改它的CSS
- 如果option等于value,则动态添加新行
- 如果我选中了复选框,则删除value = MRW选项
- 在angularjs中,如果value为null,移除href属性
- MooTools DatePicker 库:如果表单已提交,则“value”为空
- 如果value为零,则更改单元格的样式
- 如果value == 1,则获取数组中的下一个值
- 如果value存在于数组2中,则从数组1中删除Item
- 如果value =<我可以让表格单元格有不同的背景颜色吗?使用jquery或PHP获取特定的数字
- 如果找到value,则从同一对象中取另一个值
- 如果value为空,则将文本替换为空白
- Knockout JS删除选项,如果value大于(on foreach)
- 如果没有从ng-options中选择value,如何使用ng-change
- 如果我设置“let x=document.getElementById(“inputText”).value”并更新“x
- Javascript警告,如果value为空,并删除确认,如果它是n't