簡體   English   中英

哪一個是正確的? 警報((+“ 123”))警報(+“ 123”)警報(+(“ 123”))

[英]which one is correct? alert((+“123”)) alert(+“123”) alert(+(“123”))

我正在嘗試將字符串轉換為浮點數。 我知道parseFloat()可以做到這一點,但是我也找到了下面的語法,但是沒有太多參考。

正確的語法是什么,因為它們似乎都可以工作。 在哪里可以了解更多信息? 我不知道如何使用Google,因為我不知道它的名字。

// 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

它們在語法上都是正確的...但是示例1和3具有多余的括號。

這稱為隱式轉換。 由於您使用了數學運算符(+),因此它將嘗試將字符串轉換為數學運算所需的數字值。 您在這里要問的是給我以下字符串的正值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM