我有两个不同的json文件,想要合并它们并从一个文件中读取json字符串。
{"ipAddress":"1.1.1.1","port":80, "protocol":"http"}
{"ipAddress":"1.1.1.1", "domainName":"domain.com"}
我尝试了一些东西,但它仍然无法正常工作。我尝试了数组,还有以下结构:
{"jsonString1": {"ipAddress":"1.1.1.1","port":80, "protocol":"http"},
"jsonString2": {"ipAddress":"1.1.1.1", "domainName":"domain.com"}}
不确定结构是否正确。我只需要得到" jsonString1"," jsonString2"分开,所以我不需要使用更多的json文件。
答案 0 :(得分:2)
您的第一个片段是非标准的(实际上,不是JSON)。 你的第二个IS标准,但它是一个对象,而不是一个数组。
如果你想要一个数组,使用一个数组:
[{"ipAddress":"1.1.1.1","port":80, "protocol":"http"},
{"ipAddress":"1.1.1.1", "domainName":"domain.com"}]
或者,如果要使用第二个版本(对象),可以按键访问2个“子对象”:myObj.jsonString1
,myObj.jsonString2
。 BTW,一个更好的名字是“Obj1”& “Obj2”因为它们不是字符串,所以它们是实际的对象。
答案 1 :(得分:0)
使用JSON数组来保持这些文件的合并。例如
考虑到,您有一个用于URL的JSON数组,然后您想在段落中打印
<p id="url"></p>
声明一个像这样的变量
var URL=[{"ipAddress":"1.1.1.1","port":80, "protocol":"http"},
{"ipAddress":"1.1.1.1", "domainName":"domain.com"}]
您可以使用
访问这些数组document.getElementById("url").innerHTML =
URL[0].ipAddress+ " " + URL[0].port+ " " +URL[0].protocol;
您可以使用索引值
获取数组值答案 2 :(得分:0)
谢谢。我终于使用了这种语法:
JSON:
ec2.createTags(params, function(err, data) {
if (err) {
console.log(err, err.stack);
context.fail('Failed');
} else {
console.log("Tags created.");
console.log(data);
context.succeed('Completed');
}
});
使用以下命令读取字符串:
{"jsonString1": {"ipAddress":"1.1.1.1","port":80, "protocol":"http"},
"jsonString2": {"ipAddress":"1.1.1.1", "domainName":"domain.com"}}