1. 掌握前端模塊化

        共 14106字,需瀏覽 29分鐘

         ·

        2022-03-03 17:15

        一. 什么是模塊化開發(fā)

        1.1. JavaScript設(shè)計缺陷

        那么,到底什么是模塊化開發(fā)呢?

        • 事實上模塊化開發(fā)最終的目的是將程序劃分成一個個小的結(jié)構(gòu);
        • 這個結(jié)構(gòu)中編寫屬于自己的邏輯代碼,有自己的作用域,不會影響到其他的結(jié)構(gòu);
        • 這個結(jié)構(gòu)可以將自己希望暴露的變量、函數(shù)、對象等導(dǎo)出給其結(jié)構(gòu)使用;
        • 也可以通過某種方式,導(dǎo)入另外結(jié)構(gòu)中的變量、函數(shù)、對象等;

        上面說提到的結(jié)構(gòu),就是模塊;

        按照這種結(jié)構(gòu)劃分開發(fā)程序的過程,就是模塊化開發(fā)的過程;

        無論你多么喜歡JavaScript,以及它現(xiàn)在發(fā)展的有多好,我們都需要承認(rèn)在Brendan Eich用了10天寫出JavaScript的時候,它都有很多的缺陷:

        • 比如var定義的變量作用域問題;
        • 比如JavaScript的面向?qū)ο蟛⒉荒芟癯R?guī)面向?qū)ο笳Z言一樣使用class;
        • 比如JavaScript沒有模塊化的問題;

        Brendan Eich本人也多次承認(rèn)過JavaScript設(shè)計之初的缺陷,但是隨著JavaScript的發(fā)展以及標(biāo)準(zhǔn)化,存在的缺陷問題基本都得到了完善。

        • JavaScript目前已經(jīng)得到了快速的發(fā)展,無論是web、移動端、小程序端、服務(wù)器端、桌面應(yīng)用都被廣泛的使用;

        在網(wǎng)頁開發(fā)的早期,Brendan Eich開發(fā)JavaScript僅僅作為一種腳本語言,做一些簡單的表單驗證或動畫實現(xiàn)等,那個時候代碼還是很少的: