1

所以我一直想做这样的事情,但从来不知道如何使用未定义的自然变量(例如1、2、3、4、5 ...)

我想要这样的东西:

if($("#container").width() == 400*n) {
  //do something
}

在这种情况下,n 可以是任何自然基数(最好不是零)。你怎么定义n

4

2 回答 2

6

模数运算符的理想场所

if ($("#container").width() % 400 === 0) {
    // ...
}
于 2012-06-17T18:02:49.040 回答
3

JavaScript 不会为您求解具有未知数的方程;在任何给定时间,变量始终保持特定值。

因此,您似乎想做的事情(如果我正确理解您的问题)是不可能的。相反,您需要解决您给自己的方程式:

$("#container").width() == 400 * n

可以重述为

$("#container").width() / 400 == n

现在,由于您需要n是整数,所以上面的语句意味着除法$("#container").width()将产生一个整数。“将a除以x产生一个整数”的要求通常用模运算符(%在 JavaScript 中)表示为a % x == 0. 因此,您最终得到:

$("#container").width() % 400 == 0
于 2012-06-17T18:09:15.977 回答