美文网首页
JavaScript 默认值剔除

JavaScript 默认值剔除

作者: 於風聽語 | 来源:发表于2020-06-09 17:12 被阅读0次
  • 方法
function trimObject (obj, defaultValue) {
    const trimmedObj = {}
    const trimmedKeys = Object.keys(obj).filter(key => {
        return JSON.stringify(obj[key]) !== JSON.stringify(defaultValue[key]) // 避免 Object、Function
    })

    trimmedKeys.forEach(key => {
        trimmedObj[key] = obj[key]
    })

    return trimmedObj
}
  • 验证
const defaultObject = {
    color: '',
    background: '',
    attrs: {
        id: 1
    }
}

const obj = {
    color: '#fff',
    background: '',
    other: 223,
    attrs: {
        id: 1
    }
}

console.log(JSON.stringify(trimObject(obj, defaultObject), null, 4))
  • 结果


  • 有坑
    JSON.stringify(NaN) => "null"
    JSON.stringify([undefined]) => "[null]"

—— 2020/06/09 By YSH, Mostly Suny.

相关文章

  • JavaScript 默认值剔除

    方法 验证 结果 有坑JSON.stringify(NaN) => "null"JSON.stringify([u...

  • JavaScript 数组 剔除指定元素

    在Lodash中,有 .without 用于遍历数组,删除掉指定元素。例如:.without([1, 2, 3, ...

  • 20160317 overflow

    定义和用法 overflow 属性规定当内容溢出元素框时发生的事情。 默认值:visible JavaScript...

  • 学习JavaScript正则表达式(二)

    接上篇学习JavaScript正则表达式(一) RegExp对象属性 global :全局匹配,默认值为false...

  • 2、在HTML中使用JavaScript

    1、 元素的type属性不是必须的,即使不写type属性,其默认值仍为text/javascript。 PS:上...

  • javascript

    解构赋值 javascript对象取值方式 方法参数设置默认值 null和undefined的区别 null是一个...

  • JavaScript#15:数组--(三数之和)3Sum(MID

    这个题目的要点是剔除重复的解,所以先做sort是必须的,Javascript缺省是按字符sort的,所以要sort...

  • 常用的JavaScript简写技巧

    JavaScript 的简写技巧 变量声明 多个变量赋值 三元运算符 赋默认值 与运算符 (&&) 交换两个变量 ...

  • 剔除

    One 祝星终于卖到了乔彬心心念念想要的那双鞋,nike和off-withe联名的那双鞋。 原本当祝星看到拿到这双...

  • 剔除

    如果你的心被嫉妒填满,说明,别人比你优秀,你此刻要做的就是转移目光,让自己优秀跟强大起来,如果有人忽略了你,那么就...

网友评论

      本文标题:JavaScript 默认值剔除

      本文链接:https://www.haomeiwen.com/subject/bdhetktx.html