js删除JSON中的空字符串字段和空对象

使用场景 请求参数为空则不传该参数时需要用到,记录一下

// 测试
let testJson = {
          
   
	name: "Peter",
	age: 18,
	hobby: ""
}
let re = deleteEmptyProperty(testJson);
console.log(re); // 输出{"name": "Peter", age: 18}

// 
function deleteEmptyProperty(object){
          
    
  for (var i in object) {
          
   
    var value = object[i];
    if (typeof value === object) {
          
   
      if (Array.isArray(value)) {
          
   
        if (value.length == 0) {
          
   
          delete object[i];
          continue;
        }
      }
      this.deleteEmptyProperty(value);
      if (this.isEmpty(value)) {
          
   
        delete object[i];
      }
    } else {
          
   
      if (value ===  || value === null || value === undefined) {
          
   
        delete object[i];
      }
    }
  }
  return object;
}

function isEmpty(object) {
          
    
  for (var name in object) {
          
   
    return false;
  }
  return true;
}
经验分享 程序员 微信小程序 职场和发展