javascript - 在 json 对象中添加额外的文本

标签 javascript json node.js

我使用以下代码创建一个 JSON 对象

var config = {"config": {
      "example": false,
      "example2": true,
    }
}; 

我想有条件地向配置对象的中间添加(或不添加)一些值。我尝试了以下方法:

var additionalconfig = "";
if(additionalconfig){
    additionalConfig = {"additional1":true,
          "additional2":2};
  }

var config = {"config": {
      "example": false,
      additionalConfig,
      "example2": true,
    }
};

我将额外的配置添加为额外的 Node (列表?),这不是我想要的。我的预期结果是:

"config": {
      "example": false,
      "additional1":true,
      "additional2":2
      "example2": true,
    }

我尝试使用additionalconfig[0]删除 Node ,但收到错误意外的 token [。比我尝试将其添加为字符串

additionalConfig = '"additional1":true,
          "additional2":2';

但是我也遇到了错误。您知道是否可以实现这一目标,如果可以,如何实现?我需要在准确的位置添加配置,而不仅仅是合并两个对象

最佳答案

您不能在Javascript对象中间附加其他属性,您可以做的就是在对象的开头或末尾附加属性。

var config = {
    "config": {
        "example": false,
        "example2": true,
    }
};

var additionalConfig = {
    "additional1": true,
    "additional2": 2
};

var config1 = config;

//post-append
config = { ...config,
    config: { ...config.config,
        ...additionalConfig
    }
}

console.log(config);

//pre-append

config1 = { ...config1,
    config: { ...additionalConfig,
        ...config1.config

    }
}

console.log(config1);

关于javascript - 在 json 对象中添加额外的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50047562/

相关文章:

javascript - 为什么不能使用 JavaScript 改变 CSS 动画的速度

javascript - 正确的归并排序

javascript - 从本地主机获取 json 数据以在 D3 中使用

javascript - 来自两个不同调用的表的自定义过滤器

javascript - 不需要的 Json 出现在 html 中

javascript - 两个或多个功能的事件管理

javascript - 如何对包含数字的数组进行排序?

Node.js 附加文件 用户名

json - 在这种情况下,我应该使用 Redis 还是 MongoDB 哪个数据库?

node.js - MongoDB 按日期聚合