javascript - 为什么 if(number <=10) 不起作用?

标签 javascript numbers

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);
}

这个控制台.logs:

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);
}

关于javascript - 为什么 if(number <=10) 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18807031/

相关文章:

javascript - Google Chrome 扩展的 onBrowserClose 事件?

javascript - 从多个源加载 JQuery

添加/减去数字以查找是否可以生成数字的算法?

iOS DDMathParser 获取编号 'Blocks'

Java - 计算大型数学表达式

javascript - jQuery 函数中的全局变量?

javascript - 在 JSON 中查找特定子元素

javascript - 在类方法之外声明类属性

javascript - 使用 jQuery 在输入框中显示一个小数点后 2 位的值,同时保持更高的精度

string - 操作系统如何检测数字和字符串?