• 与lodash defaults一样 只替换origin里面的值为undefined的属性

    在原对象上改

    类型参数

    • T
    • U

    参数

    • origin: T
    • source: U

    返回 T & U

    const origin = { a: 12, b: undefined, c: 3, d: null, 0: undefined };
    // 0个参数
    defaults({ ...origin }); // origin
    defaults({ ...origin }, null); // origin
    defaults({ ...origin }, 1); // origin
    // 1个参数
    defaults({ ...origin }, { a: 1, b: 1 }); // { ...origin, b: 1 }
    defaults({ ...origin }, '123'); // { ...origin, 0: '1', 1: '2', 2: '3' }
  • 与lodash defaults一样 只替换origin里面的值为undefined的属性

    在原对象上改

    类型参数

    • T
    • U
    • V

    参数

    • origin: T
    • source1: U
    • source2: V

    返回 T & U & V

    const origin = { a: 12, b: undefined, c: 3, d: null, 0: undefined };
    // 2个参数
    defaults({ ...origin }, { a: 1, b: 1 }, { f: 5 }); // { ...origin, b: 1, f: 5 }
  • 与lodash defaults一样 只替换origin里面的值为undefined的属性

    在原对象上改

    类型参数

    • T
    • U
    • V
    • W

    参数

    • origin: T
    • source1: U
    • source2: V
    • source3: W

    返回 T & U & V & W

    const origin = { a: 12, b: undefined, c: 3, d: null, 0: undefined };
    // 3个参数
    defaults({ ...origin }, { a: 1, b: 1 }, { c: 0, d: 4 }, { f: 5, g: 6 }); // {...origin, b: 1, f: 5, g: 6, }
  • 与lodash defaults一样 只替换origin里面的值为undefined的属性

    在原对象上改

    参数

    • origin: object
    • 动态参数...args: object[]

    返回 object

    const origin = { a: 12, b: undefined, c: 3, d: null, 0: undefined };
    // 更多参数
    defaults({ ...origin }, { a: 1, b: 1 }, { c: 0, d: 4 }, { f: 5, g: 6 }, { h: 7, i: 8 }),; // { ...origin, b: 1, f: 5, g: 6, h: 7, i: 8 }