在 javascript 中使用 jsonpath 插入 JSON 对象?
Insert JSON object using jsonpath in javascript?
有没有什么方法可以使用 jsonPath 在另一个 JSON 对象的中间插入一个 JSON 对象?在收到 JSON 对象作为响应后,我在 Postman 测试脚本中使用 Javascript,我需要在响应中间插入 JSON 数据。我可以使用“$..decision[0]”访问我想要的响应部分。有没有办法使用“$..decision[1]”添加数据,这样:
...
"decision": [
{
"var1": 43,
"var2": 1,
}
],...
变成这样:
...
"decision": [
{
"var1": 43,
"var2": 1
},
{
"foo1": "true",
"foo2": "false"
}
],...
如果我不能,是否有另一种简单的方法将数据附加到 JSON 对象的中间?
javascript 中没有 "JSON object"。您有 Javascript objects/arrays、包含 "Java Script Object Notation".
的对象数组或字符串
您可以使用 JSON.stringify() 和 JSON.parse() 从一个到另一个。
"decision" 在您的示例中将在 JSON.parse() 解析 JSON 字符串后成为数组。
您可以使用其方法 splice() 将对象添加到数组的中间。
示例:
var jsonstring = '...';
var obj = JSON.parse(jsonstring);
obj.decision.splice(1,0,{ "foo1": "true", "foo2": "false"});
jsonstring = JSON.stringify($obj);
有没有什么方法可以使用 jsonPath 在另一个 JSON 对象的中间插入一个 JSON 对象?在收到 JSON 对象作为响应后,我在 Postman 测试脚本中使用 Javascript,我需要在响应中间插入 JSON 数据。我可以使用“$..decision[0]”访问我想要的响应部分。有没有办法使用“$..decision[1]”添加数据,这样:
...
"decision": [
{
"var1": 43,
"var2": 1,
}
],...
变成这样:
...
"decision": [
{
"var1": 43,
"var2": 1
},
{
"foo1": "true",
"foo2": "false"
}
],...
如果我不能,是否有另一种简单的方法将数据附加到 JSON 对象的中间?
javascript 中没有 "JSON object"。您有 Javascript objects/arrays、包含 "Java Script Object Notation".
的对象数组或字符串您可以使用 JSON.stringify() 和 JSON.parse() 从一个到另一个。
"decision" 在您的示例中将在 JSON.parse() 解析 JSON 字符串后成为数组。 您可以使用其方法 splice() 将对象添加到数组的中间。
示例:
var jsonstring = '...';
var obj = JSON.parse(jsonstring);
obj.decision.splice(1,0,{ "foo1": "true", "foo2": "false"});
jsonstring = JSON.stringify($obj);