判断对象属性的值是否空,如为空,删除该属性

方案一:使用 delete 方法

var abc={a:1,b:2,c:'',d:''};

function removeProperty(object){
  for(prop in object){
    if (object[prop]==='') {
      delete object[prop]
    }
  }
}

abc = removeProperty(abc);

方案二:创建新对象接收

var abc={a:1,b:2,c:'',d:''};

// 去除对象空属性
function deleteObjNull(obj){
  let _newPar = {};
  for (let key in obj) {
      /**
       * 如果对象属性的值不为空,就保存该属性
       * 这里我做了限制,如果属性的值为0,保存该属性。如果属性的值全部是空格,属于为空。
       */
      if ((obj[key] === 0 || obj[key]) && obj[key].toString().replace(/(^s*)|(s*$)/g, '') !== '') {
          //记录属性
          _newPar[key] = obj[key];
      }
  }
  //返回对象
  return _newPar;
}

abc = deleteObjNull(abc);

.

原文地址:https://www.cnblogs.com/crazycode2/p/8707562.html