因此,我正在编写一个javascript应用程序,基本上,如果一个数字大于另一个,我想交换它们的值:

if(price1 > price2)
{
  var temp = price1;
  price1 = price2;
  price2 = temp;
}

这可以工作到一定程度,但是一旦数字开始变大,即:
price1: 12345678
price2: 234556

然后,表达式将计算为false,并且不执行任何操作。有人知道这个问题是什么吗?谢谢!

最佳答案

您确定要比较这些数字吗?例如,如果将代码更改为

if (+price1 > +price2) {
    var temp = price1;
    price1 = price2;
    price2 = temp;
}

它有效吗?如果是,则price1price2是字符串,并且前缀+将它们转换为数字。

07-27 17:04