比较javascript中的十进制数

时间:2016-11-26 11:32:04

标签: php

我有比较km距离的问题,它在上面的例子中说,即时比较位置之间的距离,这些位置以km为单位。

9,441.4<1500

输出告诉我9千不到1千。在我的情况下,我应该只将1500点和逗号添加或添加为1,500.0,还是不仅仅是那个?

2 个答案:

答案 0 :(得分:5)

您应该删除逗号。您不会在JavaScript编号中使用千位分隔符。

那么为什么它没有因语法错误而失败?因为它的语法有效:JavaScript有一个逗号运算符。您的代码是数字9,后跟逗号运算符,然后是比较441.4 < 1500。逗号运算符是JavaScript中的一个......更有趣...运算符:它计算左侧操作数(示例中为9),抛弃结果值,然后计算其右侧 - 手操作数(在您的示例中为441.4<1500)并将结果值作为逗号运算符表达式的值。

你想:

9441.4<1500

答案 1 :(得分:0)

T.J. Crowder所述,您需要删除逗号,并将字符串转换为浮点数:

$api_input = "9,441.4";

$tmp = str_replace( ",", "", $api_input);

$distance = floatval($tmp);