javascript - Javascript 对象传播的对象可能具有未定义的对象作为其属性中的数据
问题描述
嘿,我正在尝试填写一个空的占位符对象(在这种情况下,它用作 vue 的 v-model,但对于这种情况并不重要)。我正在扩展原始对象的对象内部可能有也可能没有一些对象未定义,但无论传入对象的结构如何,我都需要保持第一个对象的结构。例如对象 1
let object1 = { a : '', b : '', c : {name : 'Mark', title: 'Mr'}}
对象 2 有时会像这样出现
let object2 = { a : 'AAA', b : 'BBB', c : undefined}
即使另一个对象具有未定义的属性 c,我也需要保留对象 1 的结构。在这种情况下
let object1 = { a : 'AAA', b : 'BBB', c : {name : 'Mark', title: 'Mr'}}
谢谢
解决方案
尝试将object2
第一项传播,然后将属性添加c
为第二项:
object1={...object2,c:object1.c}
或者
object1={...object2, c : object2.c ? object2.c : object1.c}
推荐阅读
- c# - DotNetBrowser 检查元素是否可见
- javascript - 使用按钮在地图上显示相关的位置地图标记
- google-chrome - Google Chrome 网上应用店认为 .domain.com cookie
- linux - 如果从脚本运行,veracript 安装脚本将失败
- graphql - 如何在本地模式中使用拼接模式中的类型
- sql - 产品级别 date 和 date-1 之间的销售差异
- java - 你如何命名一个公开序列化和反序列化/编组的方法的类
- sql-server - 了解 SQL 引发的转换错误
- javafx - Javafx 在舞台上播放视频然后关闭它并打开新舞台
- xml - 我如何执行 XML 和 DTD?