您好,登錄后才能下訂單哦!
前言
一開始,關于在node.js句末不加分號,我是拒絕的。因為有時不加分號會報錯。
我覺得node.js在語法層面挺擰巴的,要么就像PHP那樣嚴格要求加分號,要么就像python一律不加分號。而node.js卻表現出一副欲拒還迎的姿態,讓人感覺就是既要擁抱變化,又要抱殘守缺。
加不加分號,這是一個問題
直到有一天我了解了加不加分號的場景,才終于釋然
一言以蔽之:當代碼是以 ( [ ` 這些符號開頭時,就需要在代碼之前加上分號,其他場景都不需要加分號
let msg = '加不加分號呢'
(function () { console.log('我是一個匿名函數') }())
結果報錯:
我是一個匿名函數
/Users/airmb/code/node/01/04.js:3
(function () {
^TypeError: "加不加分號呢" is not a function
at Object.<anonymous> (/Users/airmb/code/node/01/04.js:3:1)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:612:3
正確的寫法:
let msg = '加不加分號呢' ;(function () { console.log('我是一個匿名函數') }())
同理,以 [ 或 ` 開頭的代碼應該這么寫:
;['章北海', '羅輯'].forEach(function (item) { console.log(item) }) ;` 宇宙中究竟有多少個文明? 高級文明會怎么對待地球? 是友善地相處? 還是殘忍地消滅? 或者只是安靜地觀察? `.toString()
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。