【问题标题】:Filter object by empty properties/entries按空属性/条目过滤对象
【发布时间】:2016-02-04 09:01:05
【问题描述】:

我怎样才能过滤像这样的对象:

{"firstname":"foo","lastname":"bar","driving":"","overnight":""}

{"firstname":"foo","lastname":"bar"}

只删除空的键/值对

【问题讨论】:

标签: javascript object filter


【解决方案1】:

使用 Object.keys() 和 Array.prototype.forEach() 的解决方案:

var original = {"firstname":"foo","lastname":"bar","driving":"","overnight":""};
var filtered = {}
Object.keys(original).forEach(function(key) {
    if (original[key] !== "") {
        filtered[key] = original[key];
    }
});
console.log(filtered);

【讨论】:

    【解决方案2】:
    for (key in obj) {
        if (obj.hasOwnProperty(key) && obj[key] === '') {
            delete obj[key];
        }
    }
    

    【讨论】:

      【解决方案3】:

      你也可以试试这个。此代码删除键 testdriving

      var obj = {"firstname":"foo","lastname":"bar","driving":"","overnight":"", "test": null};
      Object.keys(obj).forEach(function(k) {
          if (!obj[k] || obj[k] === "") {
              delete obj[k];
          }
      });
      console.log(obj);
      

      【讨论】:

        猜你喜欢
        • 2017-09-22
        • 2010-09-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-04
        • 2016-07-19
        • 1970-01-01
        相关资源
        最近更新 更多