我已經看到並使用了JavaScript代碼,它們都具有並省略';'從發言結束。他們在某些情況下而不是在其他情況下需要嗎?如果可以的話,你可以舉一些例子,如果不是通用標準,使用';'或不是...那..是問題?does javascript require';'在一行代碼的末尾?
回答
JavaScript使用名爲Semicolon Insertion的(通常不喜歡的)方法,它可以讓您省略分號。
您可以和不能插入分號的規則非常廣泛,覆蓋面也很好here。
一般來說,不要依賴分號插入。這是一個考慮不周的功能,它會在你幫助你之前傷害你。
不僅應該總是使用分號,還應該習慣於將您的{
大括號放在同一行上,因爲分號插入實際上可能會誤解您的意思。
例如,假設我想從一個函數返回一個JavaScript對象:
function f() {
return { "a":"b", "c":"d" } // works fine
}
function g() {
return // wrong!!!
{
"a":"b",
"c":"d"
}
}
如果我把{
一個新行(正如我在g
一樣),return語句實際上會在它後面插入一個分號,破壞你所說的意思。
總的來說,分號插入是一個不好的功能,你不應該依賴它。
使用;標記語句結束。 Javascript遵循C族語言設置的語法主題,並且;是語句結尾的分隔符。
你看過哪些代碼省略了這個?
如果在一行之後沒有更多的代碼,;在技術上是可選的。無論如何,你應該包括它。
';'(技術上來說,不好的風格)在很多情況下是可選的。 – Quentin
總是使用分號,這使得代碼更易於閱讀。現在我不知道有什麼情況可以省略。
有更多的情況下,它可以省略,而不是在必要的地方。 (假設你不習慣在同一行放置多個語句,這需要分號但很難閱讀。) – nnnnnn
- 1. 「\」在一行代碼的末尾做了什麼?
- 2. 在Javascript中,代碼末尾的「()」是什麼意思?
- 3. 尾行字尾仍然在第一行的末尾給出0920
- 4. 在vimrc末尾執行一行
- 5. 將javascript代碼段添加到正文標記的末尾
- 6. ¬在vim每行的末尾
- 7. 從行的末尾在linux
- 8. 在node.js末尾運行清理代碼http響應
- 9. 添加到Python的一行的末尾
- 10. 在下面的代碼末尾做什麼()?
- 11. 在// = require require之前執行javascript
- 12. 將css寫入javascript代碼does not work
- 13. 滾動到一行的末尾WPF TextBox
- 14. 複製Word中的末尾沒有換行符的末尾
- 15. Vim:替換行的末尾
- 16. 如何在另一個號碼的末尾添加號碼
- 17. 如何在每行的末尾在vim
- 18. 把python doctest放在代碼文件的末尾?
- 19. 在函數的末尾添加更多代碼
- 20. 如何確保NSWindow在代碼塊的末尾重新繪製
- 21. 頁尾在屏幕末尾
- 22. JavaScript在末尾添加css文本
- 23. JavaScript未在頁面末尾觸發
- 24. 在JavaScript函數末尾返回語句
- 25. 在javascript函數末尾播放音樂
- 26. 可能使用JavaScript GAPI而不在源代碼末尾包含'?onload ='?
- 27. python在每行末尾添加新行
- 28. 代碼在創建的字符串的末尾一直給我m
- 29. 在HTML表格的末尾添加單擊的行+下一行
- 30. 如何在底部的代碼行末尾添加觸發器事件
這是_many_ [其他SO問題](http://stackoverflow.com/search?q=javascript+semicolon)的副本。 – nnnnnn