在服务器端,我使用Java servlet发送一个字符串数组。
在响应标签上,我正确地看到了数据。
在网络选项卡上,在响应标题下,我将预期输出视为:
["John","James","steve"].
但是,在控制台中,当我尝试打印响应变量时,我将其视为:
[ e { 0="J", 1="o", 2="h", more...},e { 0="J", 1="a", 2="m", more...},e { 0="s", 1="t", 2="e", more...}]
如何有效地将其打印为["John","James","steve"]
?
假设响应数组处于变量响应中,我尝试了:
console.log(JSON.stringify(response[0])
console.log(respponse[0]);
console.log(response[0].toString());
没有打印"John"
这个词。
答案 0 :(得分:0)
你的意思是你想在Servlet端创建一个Json字符串
response.getWriter().append("{[\"John\":\"James\"]}")
答案 1 :(得分:0)
如果我没有误解你的观点,我想你的意思是你有一个包含多个对象的数组,如下所示:
var output = [{ 0: "J", 1: "o", 2: "h", 3: "n" },
{ 0: "J", 1: "a", 2: "m", 3: "e", 4: "s" },
{ 0: "S", 1: "t", 2: "e", 3: "v", 4: "e" }
];
因此,如果您无法在服务器端执行此操作,则可以使用以下JavaScript执行此操作:
var names = [];
output.forEach(function(name) {
var con = [];
for (key in name) {
if (name.hasOwnProperty(key)) {
con[+key] = name[key];
}
}
names.push(con.join(''));
});
console.log(names);
names
数组将如下:
[ 'John', 'James', 'Steve' ]