打印在JavaScript的提示變量返回「南」。打印的提示變量在JavaScript返回「南」
代碼:
var topic = window.prompt("Topic:", "");
document.write(+ topic);
打印在JavaScript的提示變量返回「南」。打印的提示變量在JavaScript返回「南」
代碼:
var topic = window.prompt("Topic:", "");
document.write(+ topic);
您使用+
作爲unary operator,這將字符串轉換與一個數字來編號,而不是字符串,如foo
,這不是可轉換。那麼你得到NaN
,不是一個數字。
var topic = window.prompt("Topic:", "");
document.write('input: ' + topic);
謝謝Nina Scholz –
在你原來的問題:
document.write(+topic);
window.prompt
返回一個字符串,並一元+
操作轉換一個字符串轉換爲數字。
如果你輸入一個非數字字符,它們不能被轉換爲數字,你會得到NaN
。如果您輸入的號碼如3
,則會輸出3
。
你的問題的解決方案是簡單地刪除+
:
document.write(topic);
編輯完一個問題後,它的工作原理是這樣的:
document.write('Topic ' + topic);
因爲現在二元+
運營商被用作字符串的級聯,代替轉換爲數字。
爲什麼'+'在寫?如果不是 –
@NinaScholz,它不會返回任何 –
刪除'+',它應該工作即可。 –