可以使用递归的方式遍历对象,并删除属性值为空字符串的属性。以下是一个示例代码:

function removeEmptyStrings(obj) {
  for (var key in obj) {
    if (typeof obj[key] === 'object') {
      removeEmptyStrings(obj[key]);
    } else if (obj[key] === '') {
      delete obj[key];
    }
  }
}

var obj = {
  a: '',
  b: 'value',
  c: {
    d: '',
    e: 'value',
    f: {
      g: '',
      h: 'value'
    }
  }
};

removeEmptyStrings(obj);
console.log(obj);

运行以上代码,会输出以下结果:

{
  b: 'value',
  c: {
    e: 'value',
    f: {
      h: 'value'
    }
  }
}

可以看到,空字符串的属性 ac.d 已经被成功删除

js 使用递归的方式把对象属性值是空字符串的属性删除

原文地址: https://www.cveoy.top/t/topic/icNw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录