hi,感謝各位讀者能夠閱讀我的文章.
下面為大家講解一下require.js和sea.js的區別.純屬個人意見,不喜勿噴.
首先原理上的區別
sea.js遵循CMD規范.書寫方式類似node.js的書寫模板代碼.依賴的自動加載,配置的簡潔清晰.說白了就是懶加載.
require.js遵循AMD規范,CMD和AMD基本相同,最大的區別是就CMD是懶加載,AMD是預加載.
簡單來說,就是sea.js屬於懶加載,require.js屬於預加載.
在這里,順便擴展一下預加載和懶加載的優缺點
預加載:當第一次訪問時將所有的文件加載出來
優點:第一次訪問完成以后, 再次訪問的速度會很快
缺點:第一次加載頁面要等待很久.
懶加載:使用的時候才會加載對應的文件.
優點:第一次訪問速度相對快點
缺點:再訪問其他新的模塊時速度會變慢.
書寫上面的區別..
都是用define來定義一個模板.通過require,exports,module三個參數來調動函數.
基本上他們的用法是大同小異的.不過要兩點較大的區別是需要大家去注意的:
1)sea.js使用模塊時用方法seajs.use,而require.js直接用require關鍵字
2)sea.js只使用一個模塊時可以只傳入一個字符串,但是require傳入的必須是一個數組.
以上是我對sea.js與require.js的區別的理解,希望大家可以增加漏點,訂正錯點.不喜勿噴,謝謝.