【发布时间】:2021-03-04 10:43:40
【问题描述】:
我正在使用一个数组,该数组在 JavaScript 中包含一些对象,然后将其显示到一个 HTML 元素上,这通过将它们放在一个 for 循环中来工作,并且如果团队赢得了比赛并且如果团队输了匹配。
但是,我想知道是否有办法将长 for 循环更改为 forEach。
下面是我的 HTML 代码和 JavaScript 代码。
HTML:
<div class="form-guide">
<div class="england-form-guide" id="englandFormGuide">
<p class="scores" id="scores"></p>
</div>
</div>
JavaScript:
var guide = [{
result: "won",
match: "England 2-1 Belgium",
},
{
result: "lost",
match: "England 0-1 Denmark",
},
{
result: "won",
match: "England 3-0 Republic of Ireland",
},
{
result: "lost",
match: "Belgium 2-0 England",
},
{
result: "won",
match: "England 4-0 Iceland",
}
]
var text = "";
for (var i = 0; i < guide.length; i++) {
text += guide[i].match + "<br>";
if (guide[i].result == "won") {
text += '<span class="colour-green"><span class="green-circle">W</span>' + guide[i].match + '</span><br>';
} else if (guide[i].result == "lost") {
text += '<span class="colour-red"><span class="red-circle">L</span>' + guide[i].match + '</span><br>';
}
}
document.getElementById("scores").innerHTML = text;
非常感谢。
【问题讨论】:
-
是的,你可以,但实际上或多或少是一样的......
-
结果将是相同的,您将失去
for循环的好处。for可以被break打断(forEach不能),你可以在其中使用await(尽管在你当前的代码中你不需要这个)。
标签: javascript html for-loop foreach