JavaScript和JavaScript的新東西是有趣的。我被展示了這個例子:在Javascript中處理字符串和整數的不同方法
"37" - 7 // "30"
"37" + 7 // "337"
這是一個練習來展示Javascript如何轉換和處理字符串和整數。我不明白的是爲什麼這兩個陳述的處理方式不同。第一條語句將37轉換爲整數並減去7,剩下30(如果我將其更改爲6,則它變爲31)。但是,在第二個語句中,它將它視爲一個字符串,並將第二個7連接到該字符串的末尾。在文本
var number = "37" - 7
console.log(number);
,將其保存爲一個.js文件,並用Node.js的執行它:
出於測試目的,我寫這
如果沒有簡單的方法來解釋這一點,我只會將這個問題歸咎於JS所具有的奇怪行爲。過於複雜的答案會浪費在像我這樣的新手上。
預先感謝您。
不能從字符串中減去,所以JavaScript的對待 - 簽署爲具有數字參數。然而,你可以添加字符串,所以如果左邊有一個字符串,那麼JavaScript會將右邊的arg轉換爲字符串。這不是奇怪的行爲,它是預期的。 – 2015-01-09 22:17:09
'+'用於加法和連接,而'-'只是減號。在你的情況下,你用'+'連接字符串。 – j08691 2015-01-09 22:17:13