我从有效负载中的另一台服务器收到以下内容作为查询参数:
"[55]"
现在我想将它转换为JavaScript中的数组,
以下是我的工作:
var termssValidation= JSON.parse(JSON.stringify(event.termsQuery));
但是当我运行以下内容时:
for(var t in termssValidation ){
console.log(termssValidation[t]);
}
我得到3行如下:
[
5
5
]
如何正确地将上述内容转换为数组?
答案 0 :(得分:4)
答案 1 :(得分:3)
JSON.stringify
过剩
let j = JSON.parse("[55]")
console.log(j)
答案 2 :(得分:3)
问题是内部JSON.stringify()。 此方法将“[66]”转换为“”[66]“”。然后JSON.parse转换此字符串,就像内部引号被转义一样。结果是原始字符串“[66]”。 因为javascript中的String是可迭代的,所以您将获得单个字符作为迭代的结果。
这是解决问题的方法:
var termssValidation= JSON.parse(event.termsQuery);
答案 3 :(得分:2)
此代码有效!
let a = "[55]";
a = JSON.parse(a);
for (let i in a) {
console.log(a[i]); //55
}