对象上的 Javascript 字符串等效项

标签 javascript

我有一个对象,我正在尝试解析并删除空属性。我遇到了 javascript 问题,无法正确地等同于该语句。

var filters = { prop1 : "", prop2 : "set", prop3 : "" };
var f;
for( f in filters) {
    if(filters[f] === "") {
         delete filters[f];
    }
}

使用谷歌的调试控制台,我知道filters[f]给了我prop1的“”,并且filters[f] ===“”的语句等于true,但它没有进入if语句 block 内。

最佳答案

如果您修复了变量名称中的拼写错误,它似乎会像您期望的那样工作

var filters = { prop1 : "", prop2 : "set", prop3 : "" };
//        ^ added
var f;
for( f in filters) {
    if(filters[f] === "") {
         delete filters[f];
    }
}
console.log(filters); // Object {prop2: "set"}

关于对象上的 Javascript 字符串等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29267192/

相关文章:

javascript - 通过 JavaScript 映射 Json 数据

javascript - html: 从 onclick 属性访问鼠标事件

javascript - "Uncaught SyntaxError: import not found: default"在一个模块中工作,而不在另一个模块中工作

javascript - 避免/禁用自动跳转到输入字段

javascript - 如何在 Angular2 中正确实现 detectChanges()?

javascript - 替换字符串数组中的正则表达式字符串

javascript - 我只想删除 Facebook 按钮

javascript - 动态 JSX 元素/标签名称

javascript - Jquery,清除/清空 tbody 元素的所有内容?

javascript - 一个功能来统治多个按钮,然后是一些