javascript - For 循环出现不足

标签 javascript for-loop

我正在制作一个乘法表,它接受用户的输入并构建一个 n × n 表。然而,使用我拥有的脚本,它总是显示比预期少的行和列。我在这里缺少什么?

JS:

function happy(rows, cols){
        var hcode = '';
        w=window.open();
        //w.document.write("here are " + rows + cols)
        w.document.write("<table border='1'><tr> </td>");
        for (j=1; j<cols; j++){
            w.document.write("<tr>");
            w.document.write("<td bgcolor='plum'>"+ j +"</td>");    
            //w.document.write("<tr>");

            for (i=2; i<rows; i++){
                    w.document.write("<td>" + j*i + "</td>");
            }
            w.document.write("</tr>")
        }
        w.document.write("</table>");       
}

最佳答案

如果您对结果感到惊讶,则表示存在相差一错误。如果您对结果并不感到惊讶,那么这是设计使然。

您可以自己在纸上尝试一下。

假设您想数到 3,那么您就从 1 开始。

  • 所以第一个数字是 1,加 1
  • 检查数字是否小于3,是,第二个数字为2,加1
  • 检查数字是否小于 3,否,不小于(3 不小于 3)

没有第三个数字。因为您已经通过检查 number<3 停止了循环.

要绕过此检查,检查数字是否小于或等于 3:

for (j=1; j<=cols; j++){ ...

关于javascript - For 循环出现不足,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25882554/

相关文章:

Javascript:循环到任何带有偶数/奇数描述的数字。为什么它只记录用户输入?

javascript - 如何使用 for 循环迭代 Angular $scope 变量

batch-file - 为什么在 IN 之后 FOR 会因延迟子字符串扩展而失败?

java - 为输入的每个字符分配一个值并显示输入的值

javascript - 筛选输入的输入字段值的下拉值

javascript - 单击另一个图像时更改图像,但使用 srcset 功能(jquery 可选)

javascript - 在 JavaScript 中查找函数参数的数量

javascript - 窗口调整大小时的 HTML5 拖动高度

javascript - 使用javascript改变R Shiny 的selectinput的背景颜色

基于范围的 for 循环中的 C++11 重新声明