簡體   English   中英

JavaScript中的隱式轉換

[英]Implicit conversion in Javascript

為什么使用JavaScript得出以下結果不同?

console.log(1 + + "2"); // => 3
console.log(1 + "2"); // => 12

JavaScript中是否存在隱式轉換?

不, 一元加號運算符 (第二個+ )顯式將字符串轉換為數字。

在字符串上使用一元+運算符時,會將其轉換為數字,但這是在將+附加到字符串后顯式完成的。 這就解釋了為什么1 + +"2"為3。對於其他情況,您只是在進行字符串連接。

JavaScript具有自動類型轉換的概念,當您執行某些操作時會隱式完成。

並回答您的問題:

是的,JavaScript中有隱式轉換。

嘗試:

console.log(Number(1) + Number(+"2"));
console.log(Number(1) + Number("2"));

有關類型轉換或轉換的更多信息, 訪問https://www.w3schools.com/js/js_type_conversion.asp

暫無
暫無

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

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