0
function skl() {
    var trct = 100;
    var amt = 100;
    while (amt == trct)
    {
        funk();
        amt += 50;
        trct = counttr();
    }
    console.log(amt, friendct);
};

最初有 100<tr>s

funk()向下滚动以显示 50<tr>多个

counttr()计算TR的数量并返回数量。

该功能的重点是向下滚动,直到它们不再是 TR。当不再有<tr>s 时,该函数仍会加 50amtcounttr()不会加 50,因此当 for 循环计算时,数字将不再相等并且循环结束。

编辑 - 循环只运行一次并显示“100 150”,表示 的值trct没有改变。

4

1 回答 1

1

for 循环条件中的第二个子句在每次迭代时都进行测试,当它不再为真时,循环结束。

您的 for 循环如下所示:

for (amt; amt == trct;)

如果amt != trct在第一次迭代之后,for 循环永远不会运行第二次。你需要弄清楚为什么不是这样。我会在 for 循环结束时记录三件事,以获取一些可见性:amttrctamt == trct.

counttr() 函数可能会返回您不期望的内容

于 2012-11-11T15:45:21.193 回答