检查数字是否在两个数字之间

fig*_*r20 3 javascript jquery

我有一个名为'age'的变量,如果它在两个数字之间,我正在努力解决这个问题.在这种情况下,我想知道年龄是否在30到80之间.

到目前为止我有这个...

if ( age >= 30 && age <=80 ) {
            $('.display').each(function() {
                $(this).css('display', '');
            });
            }
Run Code Online (Sandbox Code Playgroud)

如果年龄低于30,则表示效果很好,然后.display div不会显示,但是检查数字是否小于80的最后一部分不起作用.

任何人都能指出我可以阅读的类似功能的方向吗?或者我做了一些明显错误的事情?

Yuk*_*élé 18

此功能检查数字n是否在a和之间b

function isBetween(n, a, b) {
   return (n - a) * (n - b) <= 0
}
Run Code Online (Sandbox Code Playgroud)

  • 当你不知道a和b哪个更高时,这绝对是最好的。当你知道时,a&lt;=n &amp;&amp; n&lt;=b 工作得更快 (2认同)

Ja͢*_*͢ck 5

您编写的用于确定某个值是否位于两个值之间的条件很好。这里似乎发生的是,一旦age >= 30达到 的条件,例如31,显示属性就会更新,但一旦超过80,它不会\xe2\x80\x99t 恢复任何样式更改。

\n\n

display在 jQuery 中,您通常会使用 show 和 hide 方法,而不是修改CSS 属性,例如.toggle()

\n\n
// only show if age is between 30 and 80\n$(\'.display\').toggle(age >= 30 && age <=80);\n
Run Code Online (Sandbox Code Playgroud)\n


Ror*_*san 3

''不是该display属性的正确设置。根据您的描述,您想使用block. 另外,您不需要each()在这里使用循环。尝试这个:

if (age >= 30 && age <= 80) {
    $('.display').css('display', 'block');
}
Run Code Online (Sandbox Code Playgroud)

小提琴示例