对象继承赋值 | 在线免费工具 | Elysia ToolsData Processing
对象继承赋值
使用 lodash _.assignIn 分配自有和继承属性
将来源对象的自有和继承可枚举属性分配到目标对象。
亮点:
- 使用 lodash
_.assignIn
- 包含继承的可枚举属性
- 后面的来源会覆盖前面的值
示例:
- 目标:
{"a":1}
- 来源 1:
{"b":2}
- 来源 2:
{"a":3}
- 结果:
{"a":3,"b":2}
执行
运行这个工具
填写表单、运行工具,并在同一页面查看结果。
工具使用指南
详细了解工具的适用范围、支持能力及用户案例。
关键事实
- 分类
- Data Processing
- 输入类型
- textarea
- 输出类型
- text
- 案例覆盖
- 4
- API 可用
- 是
适用场景
- 需要将多个配置对象或数据对象合并为一个统一对象时。
- 处理 JavaScript 对象时,需要确保原型链上的可枚举属性也被合并。
- 希望用一个或多个源对象来更新或扩展一个目标对象的属性。
使用方式
- 1在“目标对象”输入框中,输入作为合并基础的 JSON 对象。
- 2在“来源”输入框中,依次输入一个或多个要合并的源 JSON 对象。
- 3工具调用 lodash 的 `_.assignIn` 方法执行合并操作。
- 4输出一个合并了所有源对象(包括继承属性)的新对象。
背景
编写一个函数,接收用户传入的选项对象,但需要确保某些关键选项有合理的默认值。
问题
需要将用户选项与一个包含所有默认值的对象合并,用户未指定的选项使用默认值。
如何使用
将包含所有默认值的对象作为“目标对象”,将用户传入的选项对象作为“来源1”。
目标对象:{"color": "blue", "size": "medium", "visible": true, "animation": "fade"}
来源1:{"color": "red", "size": "large"}
结果
得到最终选项:{"color": "red", "size": "large", "visible": true, "animation": "fade"}。用户指定了颜色和大小,其他属性使用默认值。