2 回答
TA贡献1864条经验 获得超6个赞
几个问题
不存在,
类型不存在(它是类型,JS 区分大小写)
hmtl += 对象不起作用
mcve 会像这样有用:
const data = [
{ "Type":"Ford", "Model":"mustang" },
{ "Type":"Dodge", "Model":"ram" }
]
var text = [];
data.forEach(function(these) {
text.push(these.Type)
});
document.getElementById('special').textContent = text.join(", ");
<div id="special"></div>
更多详情:
const data = [
{ "Type":"Ford", "Model":"mustang" },
{ "Type":"Dodge", "Model":"ram" }
]
var html = [];
data.forEach(function(these) {
html.push(`<li>${these.Type}: ${these.Model}</li>`)
});
document.getElementById('special').innerHTML = html.join("");
<ul id="special"></ul>
TA贡献1812条经验 获得超5个赞
您正在将一个 JavaScript 对象附加到 html 字符串中,该字符串理论上将计算为 或类似的东西。如果您希望 s 显示在 HTML 本身中,则只需将对象括在引号中,或调用 ,即可。其次,您尝试将对象的键设置为对象本身的引用,但键本身(除非被 s 包围)不会反映局部变量;而是文字字符串本身。"[object Object]"{}JSON.stringify(obj)[]
所以这里的“这些”是一个变量名称,试图在JSON键中引用,但作为一个键,它将评估为字符串文字“these”,以解决这些问题,将“这些”括在括号中,JSON.stringify整个事物,或者整个对象在s中并将变量值连接到它,所以要么:"
var html = '';
data.forEach(function (these) {
html += "{ " + these + ": " + res.type + "}"/*or some other string based on */;
});
或
var html = '';
data.forEach(function (these) {
html += JSON.stringify({ [these]: res.type })/*or some other string based on */;
});
添加回答
举报