[英]JavaScript beginner troubles with quotation marks
我正在嘗試從一本書(Jeremy McPeak 的初學者 JavaScript)中學習 JS,但我堅持使用以下代碼:
<script>
var myString = "56.02 degrees centigrade";
document.write("\"" + myString + "\" is " + parseInt(myString, 10) +
" as an integer" + "<br/>");
</script>
html 中的結果是這樣的: "56.02 degrees centigrade" is 56 as an integer
。
我不明白的在書中沒有解釋——為什么這段代碼是這樣寫的? 有人可以用外行的術語解釋為什么我們以"\\""
開頭(為什么不只是\\"
因為這是雙引號的轉義序列),為什么在那之后我們必須寫"\\"
(不應該只是\\"
如果我們想要 myString 的右引號),為什么在這之后寫成: is "
? 基本上,第一部分真的讓我感到困惑。
在 Javascript(和大多數其他語言)中,您可以通過在一對引號字符之間放置一系列字符來編寫字符串。 所以包含abc
的字符串寫成
"abc"
如果您希望字符串中的其中一個字符是引號字符,則必須對其進行轉義,因此它不會被視為字符串的結尾。 所以包含abc"def
的字符串將被寫成:
"abc\"def"
這在您的代碼中得到了證明
"\" is "
這是一個以文字引號開頭的字符串,后跟單詞is
。
如果您想要一個僅包含引號字符的字符串,則需要在表示您正在編寫字符串的引號之間放置一個轉義的引號:
"\""
這就是代碼中連接表達式開頭的內容。
如果你只是寫
\"
那將是一個轉義的報價。 但是因為它不在引號內,所以它不是一個字符串——它不是任何東西的有效語法。
在 Javascript 中,還有另一種選擇。 它允許使用單引號和雙引號將字符串括起來。 所以如果你有一個包含雙引號的字符串,你可以把它放在單引號內:
'"'
您不需要轉義它,因為雙引號不會結束以單引號開頭的字符串。 相反,如果要在字符串中放置單引號,請使用雙引號作為分隔符:
"This is Barry's answer"
myString 是一個字符串。 函數 parseInt(string, radix) 將字符串解析為整數(更多示例請參見此處)。
引號是它們的方式,以便輸出顯示引號。 如果您不希望輸出中的引號,則 js 可以簡化為:
document.write(myString + " is " + parseInt(myString, 10) + " as an integer" + "<br/>");
但這在展示 parseInt 的工作原理時並不清楚。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.