首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JS逻辑精神错乱

JS逻辑精神错乱
EN

Stack Overflow用户
提问于 2017-07-27 20:08:28
回答 2查看 82关注 0票数 3

这段代码返回min,这是怎么可能的?

代码语言:javascript
运行
复制
if(prices[i] == 1000 && min == 53){
  if(prices[i] < min){
    return min;
  }
  return prices[i];
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-07-27 20:11:32

这些值是字符串。当您使用==将数字与数字进行比较时,首先(内部)将数字转换为字符串。然而,<将这两个字符串作为字符串进行比较,因此字符串"1000“实际上小于字符串"53",因为"1”位于字符集"5“之前。

票数 5
EN

Stack Overflow用户

发布于 2017-07-27 20:11:19

当你比较字符串而不是数字时,会发生一些有趣的事情。

代码语言:javascript
运行
复制
console.log("strings", "1000" < "53")
console.log("numbers", 1000 < 53)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45360146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档