亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于一個分號的問題,為什么沒有分號就報錯了呢?

關于一個分號的問題,為什么沒有分號就報錯了呢?

汪汪一只貓 2018-11-21 15:14:36
輸出2當把那個分號去掉,報錯求問那個分號是起了什么作用?為什么去掉會報錯呢?
查看完整描述

1 回答

?
茅侃侃

TA貢獻1842條經驗 獲得超22個贊

不是分號的問題,
而是如果沒有;號的阻斷, 解釋器直接把兩條語句合并成:

var xx = function(){}[1,2,3].aa(22);

在使用已()和[]為開頭的語句時, 要尤其注意, 因為這兩個操作符會優先和前面的表達式進行組合, ;號不能省

在某些的;號則不是必須的, 比如;

var a = 1, b=2a++
b++

這并不會報錯

由于 js 并沒有明確的對這樣的行為做出解釋, 而且頁容易混亂, 所以推薦的做法一般都是:
不管需不需要;號隔斷, 你最好在后尾都加上一句, 除非你明確知道(想要)導致的結果.
這種做法稱作最佳實踐


查看完整回答
反對 回復 2018-12-09
  • 1 回答
  • 0 關注
  • 942 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號