我试图将字符串转换为浮点数。我知道parseFloat()可以做到这一点,但我也发现了下面的语法,但没有太多参考。
正确的语法是什么,因为它们似乎都有效。我在哪里可以了解更多相关信息?我不知道如何谷歌它,因为我不知道它的名字。
// syntax 1
alert((+"123")); // 123
alert((+"x123")); // NaN
alert((+"123x")); // NaN
alert((+"123 ")); // 123
alert((+" 123")); // 123
alert((+"12 3")); // NaN
// syntax 2
alert(+"123"); // 123
alert(+"x123"); // NaN
alert(+"123x"); // NaN
alert(+"123 "); // 123
alert(+" 123"); // 123
alert(+"12 3"); // NaN
// syntax 3
alert(+("123")); // 123
alert(+("x123")); // NaN
alert(+("123x")); // NaN
alert(+("123 ")); // 123
alert(+(" 123")); // 123
alert(+("12 3")); // NaN
答案 0 :(得分:3)
它们在语法上都是正确的......但是示例1和3有多余的括号。
答案 1 :(得分:2)
这称为隐式转换。由于您使用了数学运算符(+),因此它会尝试将字符串转换为数学运算所需的数值。你在这里问的是给我以下字符串的正值。