我写了一些简单的 JavaScript 来创建一个 HTML 表格。
它是通过遍历数组来填充的
var resultSet;
for (var i = 0, i < questions.length;; i++){
...
resultSet += '<tr>' + '<td>' + i + '</td><td>' + questions[i].question + '</td><td>' + questions[i].userAnswer + '</td><td>' +
questions[i].correctAnswer + '</td>' + '</tr>';
}
所以这是一种势在必行的方法。我正在阅读有关 Scala 的文章,其中一个类似的例子是:
questions.map(n => '<tr>' + '<td>' + '</td><td>' + questions[i].question + ...);
这是一个功能。重点是什么而不是怎么做。
所以我想知道如何使我的 JavaScript 更具功能性?
当然允许使用 JQuery。
最佳答案
Javascript 有 Array.forEach
但是兼容性有限:虽然所有其他浏览器都支持它,但 IE 仅从 IE9 开始支持它 - 因此您可能需要其他 IE 的垫片。
基本上你可以这样写:
questions.forEach(function(a){
resultSet += '<tr><td>' + a.question + '</td><td>' +
a.userAnswer + '</td><td>' +
a.correctAnswer + '</td></tr>';
});
jQuery 提供 .each()
它为您提供相同的功能:
$.each(questions, function(index, value) {
/* Do your stuff*/
});
关于javascript - 使迭代在 JavaScript/JQuery 中更具功能性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14213034/