我正在學習關於分號放置的w3schools,他們說「總是用分號結束簡單語句。」並且:「不要用分號結尾複雜的語句。」他們沒有定義簡單和複雜的陳述之間的區別是什麼,徹底的在線搜索也沒有提供答案。所以我仍然對JavaScript分號展示位置感到困惑。將不勝感激任何幫助。謝謝!簡單語句和複雜語句之間的區別 - Javascript
鏈接:http://www.w3schools.com/js/js_conventions.asp 它的標題下:「聲明規則」
我正在學習關於分號放置的w3schools,他們說「總是用分號結束簡單語句。」並且:「不要用分號結尾複雜的語句。」他們沒有定義簡單和複雜的陳述之間的區別是什麼,徹底的在線搜索也沒有提供答案。所以我仍然對JavaScript分號展示位置感到困惑。將不勝感激任何幫助。謝謝!簡單語句和複雜語句之間的區別 - Javascript
鏈接:http://www.w3schools.com/js/js_conventions.asp 它的標題下:「聲明規則」
複雜的語句是內部{}
(「簡單」)語句序列。
所以你會寫(簡單的語句):
a = 3;
和(複雜的語句,在許多語言中稱爲複合語句,在JavaScript中稱爲BLOCK)
{
a = 3;
b = 4;
}
但不
{
a = 3;
b = 4;
};
從ES 6不再是真的,在定義箭頭函數後省略';'是語法錯誤。 –
實際上,更好的稱爲**塊**,這是標準術語。 「複合語句」用於其他編程語言,但無法在JS規範中找到。 – 2016-08-03 13:53:10
@JaredSmith不確定你的意思。你是指箭頭函數的簡潔形體嗎?這不是一種說法,而是一種**表達**。 – 2016-08-03 13:54:01
複雜的陳述是指像if
,for
,while
等
if(condition){
} //no semicolon
簡單的聲明:
var x = 2;
一個複雜的陳述(這是一個錯誤且令人困惑的術語,並未在JS中使用)不必是任何東西。它可以獨自坐在那裏。 – 2016-08-03 13:55:04
提供一個鏈接到你的報價頁面。一般而言,您只需在語句末尾添加分號即可。有一些地方不需要它們,就像在函數定義之後一樣,但即使你在函數之後添加了一個地方,它也不會破壞任何東西。如果你對分號是否屬於混淆,試試吧。另外,考慮使用MDN網站學習JavaScript而不是3wschools。 w3s有一個傾向於給予無害的描述和例子。 –
我不知道是否適合發佈鏈接到SO的文檔作爲答案,但有一篇關於[Automatic Semicolon Insertion]的文章(http://stackoverflow.com/documentation/javascript/4363/automatic-semicolon -insertion-asi#t = 201608031320000905945) – BSMP
正如Pamblam所說,w3schools值得懷疑,有*更多*更好的資源。 –