为什么 if(数字 <=10) 不起作用
why does if(number <=10) not work?
var way = 'up';
var m25 = {
'n': 10
};
for (var somelongnumber = 0; i < 10000; i++) {
if (way === 'up') {
m25.n = m25.n + 5;
if (m25.n >= 90) {
way = 'down';
}
} else {
m25.n = m25.n - 5;
if (m25.n <= 10) {
way = 'down';
}
}
console.log(way + m25.n);
}
此控制台日志:
up15
up20
up25
up30
up35
up40
up45
up50
up55
up60
up65
up70
up75
up80
up85
down90
down85
down80
down75
down70
down65
down60
down55
down50
down45
down40
down35
down30
down25
down20
down15
down10
down5
down0
down-5
down-10
down-15
down-20
down-25
down-30
down-35
down-40
down-45
down-50
down-55
为什么会超过零?我很困惑!
首先,您应该格式化代码,使其更易于阅读。 然后你可能会注意到你的错误。 if (m25.n <= 10) way = 'down';
应该'up'
var way = 'up';
var m25 = {
'n': 10
};
for (var i = 0; i < 1000; i++) {
if (way === 'up') {
m25.n = m25.n + 5;
if (m25.n >= 90) {
way = 'down';
}
} else {
m25.n = m25.n - 5;
if (m25.n <= 10) {
way = 'up';
}
}
console.log(way + m25.n);
}
当它看到 <=10 时,它会设置为"向下",当您打算将其设置为"向上"时
这是因为您永远不会将方式重新分配给"向上"。您必须在 else 中编辑您的第二个 if 语句...
else {
m25.n = m25.n - 5;
if (m25.n <= 10) {
way = 'up'; // RIGHT HERE
}
}
你还没有声明 i。相反,您正在使用某个长数...
也许你想在第二个 if 中再次up
? (m25.n <= 10) way = 'down';
应该是"up
"
而且您可能还想在somelongnumber
内部i
。
在这里演示
你可以试试:
if (m25.n <= 10) {
way = 'up';
}
和:
while (m25.n >= 0) {
console.log(way + m25.n);
}
相关文章:
- Javascript:If-then语句在函数中不起作用
- 循环通过数组的If语句不起作用
- 清除函数中if语句内部不起作用的间隔
- 带有 AJAX 响应或 AJAX 响应的 IF 条件.响应.Text 不起作用
- Javascript if和else语句不起作用
- PHP代码中实现的JavaScript |if语句不起作用
- check if checkbox:check不起作用,why,jquery
- if 语句在 JavaScript 上不起作用
- .has() 函数在 if 语句 (jQuery) 中不起作用
- Javascript if-else循环不起作用
- 简单的JS计算器-为什么不是'这个if语句不起作用
- if-else循环和jquery在热应用程序或冷应用程序中不起作用
- Javascript验证不起作用——只要一个if语句为true,它就会停止所有if语句
- Javascript If语句,不起作用
- If.else语句检查NaN和空字符串是否在JavaScript中不起作用
- js 函数中的 if 语句不起作用
- javascript if条件&&条件不'不起作用
- 简单函数在if语句中不起作用
- Angular ng show没有'如果我加上ng-if就不起作用
- 选中复选框代码不起作用 if($('#primayins').attr('checked'