js 对象null 或者 'null' 值处理(去除null值)
转载 https://blog.csdn.net/Baby_lucy/article/details/105179360
js 对象null 或者 'null' 值处理(去除null值)
/**
* data 需要传入的去除null值的对象或者值
* defaultStr 将null值转为该字符串, 不传默认为 空字符串 ''
*/
function removeNull(data, defaultStr = '') {
// 普通数据类型
if (typeof data != 'object' || data == null) {
if ((data == null || data == 'null')) {
return defaultStr;
} else {
return data;
}
}
// 引用数据类型
for (const v in data) {
if (data[v] == null || data[v] == 'null') {
data[v] = defaultStr;
}
if (typeof data[v] == 'object') {
removeNull(data[v])
}
}
}
// 测试数据
const data = {
aa: null,
bb: 'bb',
cc: 'null',
dd: {
dd1: 'dd1',
dd2: null,
dd3: 'null'
},
ee: [{
ee: 'null',
ff: ['null', {
ff1: {
ff2: null
}
}]
}, null]
}
// 如果是object, 因为是引用传递, 我没有将data return回来, 调用方法之后该data已经去除完成
removeNull(data)
console.log(data)

浙公网安备 33010602011771号