代码之家  ›  专栏  ›  技术社区  ›  Dawn17

在JavaScript中使用…修改对象

  •  0
  • Dawn17  · 技术社区  · 7 年前

    我有一个物体叫做 added

    {
      title: "test1",
      startDate: "Mon Apr 15 2019 10:30:00 GMT-0500 (Central Daylight Time)",
      endDate: "Mon Apr 15 2019 11:00:00 GMT-0500 (Central Daylight Time)",
      allDay: false
    }
    

    我试着编辑 startDate 和 endDate 通过执行以下操作创建此对象的字段:

    added = {
      ...added,
      {added.startDate: "111", added.endDate: "222"}       
    }
    

    但这给了我一个错误

    意外标记,应为,

    正确的方法是什么?

    1 回复  |  直到 7 年前
        1
  •  5
  •   CertainPerformance    7 年前

    added 作为一个新的对象文本 {} s需要是键值对, 或 它需要传播(传播) ... 普通物体 因为对象是一个值,而不是键值对。

    更改为:

    added = {
      ...added,
      startDate: "111",
      endDate: "222"
    }
    

    added = {
      ...added,
      ...{
        startDate: "111",
        endDate: "222"
      }
    }
    

    这将是有效的语法(但愚蠢的做-更容易只是列出新的属性在外对象文字)。