[英]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.