国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

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

瀏覽:155日期:2022-12-15 13:50:38

問題描述

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

輸出2

當把那個分號去掉,報錯javascript - 關于一個分號的問題,為什么沒有分號就報錯了呢?

求問那個分號是起了什么作用?為什么去掉會報錯呢?

問題解答

回答1:

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

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

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

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

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

這并不會報錯

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

回答2:

function(){}[1,2,3] 返回undefined

回答3:

這里的分號應該表示的是這一條語句結束吧?

Array.prototype.aa = function(){console.log(2);};

我覺得你寫成這樣就看得出了。

標簽: JavaScript
主站蜘蛛池模板: 涞源县| 额敏县| 牡丹江市| 迭部县| 淮阳县| 仁怀市| 龙南县| 米脂县| 进贤县| 天气| 平南县| 玉山县| 西贡区| 博湖县| 四川省| 北海市| 青浦区| 柳河县| 育儿| 永丰县| 水城县| 石狮市| 双江| 大竹县| 乌拉特前旗| 晋中市| 湄潭县| 仁怀市| 宁都县| 营山县| 灵寿县| 白沙| 白城市| 东乌| 寻乌县| 冀州市| 长宁县| 南投县| 女性| 双鸭山市| 恩施市|