站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        es6的class有沒有變量提升

        es6的class沒有變量提升。在es5中class存在變量提升,可以先使用再定義類,而在es6中,不會把類的聲明提升到頭部,先使用在定義的話會產(chǎn)生報錯,因此不能先使用再定義,es6的class也就沒有變量提升。

        es6的class有沒有變量提升

        本文操作環(huán)境:windows10系統(tǒng)、Vue2.9.6版,DELL G3電腦。

        es6的class有沒有變量提升

        class不存在變量提升

        因為ES6不會把類的聲明提升到代碼頭部,所以需要先定義再使用。

        但是ES5就不一樣,ES5存在變量提升,可以先使用,然后再定義。

        // ES5可以先使用再定義,存在變量提升 new A(); function A(){ } // ES6不能先使用再定義,不存在變量提升 會報錯 new B(); // B is not defined class B{ }

        類不存在變量提升(hoist),這一點與 ES5 完全不同。

        new Foo(); // ReferenceError class Foo {}

        上面代碼中,ES6 Foo類使用在前,定義在后,這樣會報錯,因為 ES6 不會把類的聲明提升到代碼頭部。這種規(guī)定的原因與下文要提到的繼承有關(guān),必須保證子類在父類之后定義。

        {   let Foo = class {};   class Bar extends Foo {   } }

        上面的代碼不會報錯,因為Bar繼承Foo的時候,F(xiàn)oo已經(jīng)有定義了。但是,如果存在class的提升,上面代碼就會報錯,因為class會被提升到代碼頭部,而let命令是不提升的,所以導(dǎo)致Bar繼承Foo的時候,F(xiàn)oo還沒有定義。

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 你懂的国产精品| 成人精品一区二区三区电影黑人| 国产精品v片在线观看不卡| 国产精品天干天干在线综合| 国产精品区免费视频| 日本免费精品一区二区三区| 欧美精品一区二区三区视频| 久久久精品人妻一区二区三区四| 精品人妻无码专区中文字幕| 国产精品爽爽va在线观看网站| 亚洲欧美日韩国产精品专区| 国产精品香蕉在线观看| 国产成人精品久久二区二区| 少妇人妻偷人精品无码视频新浪| 久久亚洲中文字幕精品一区| 国产成人1024精品免费| 8x福利精品第一导航| 少妇精品无码一区二区三区| 亚洲国产成人精品91久久久 | 国产精品 视频一区 二区三区| 91精品国产高清久久久久久io| 日韩人妻无码精品久久久不卡| 亚洲精品岛国片在线观看| 精品日本一区二区三区在线观看| 国产成人高清精品一区二区三区 | 国产精品久久久久乳精品爆| 91精品国产麻豆国产自产在线| 久久最新精品国产| 国产夫妇精品自在线| 91麻豆精品国产| 成人伊人精品色XXXX视频| 国产精品无码专区| 乱色精品无码一区二区国产盗| 亚洲av无码精品网站| 亚洲综合精品香蕉久久网| 亚洲高清专区日韩精品| 午夜DY888国产精品影院| 亚洲av日韩av天堂影片精品| 色一乱一伦一图一区二区精品 | 久久精品国产亚洲av高清漫画| 特级精品毛片免费观看|