js 对象null 或者 'null' 值处理(去除null值)

转载  https://blog.csdn.net/Baby_lucy/article/details/105179360

js 对象null 或者 'null' 值处理(去除null值)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/**
 *  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)

  

 

posted @   隰荷华  阅读(991)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示