8.26js文件引入vue組件/IIFE達到模塊化編程

起因:有個md5.js文件,用來給字符串md5加密,一般要把一個js文件引入vue的script部分,通過export和import的模塊化方法進行,如果是在入口文件import的話,全部都可以用這個js文件,但是這個md5并不是通過export的方式導出,讓我很是疑惑.

解決:這個js文件有個關鍵的代碼段如下圖:

md5.js模塊化代碼


這是一段AMD規范的代碼,經查require.js和amd規范發現:define(function(){})和require()是AMD規范定義模塊的方式,同樣的,es6用export和import處理,commonjs用module.exports和require來處理。

AMD/es6/commonJS規范:AMD commonJS ES6 es6? ? ??monjs cmd amd? 總結的很好

2,md5.js的寫法用了一個IIFE的技巧,所有的方法封裝到一個IIFE里面,這樣可以達到不暴露私有成員的目的,又能模塊化使用里面的成員方法。IIFE只需要把要暴露出的方法return出來就可以。里面的變量外部無法訪問。這也是模塊化編程的基本寫法。

var module1 = (function(){

var _count = 0;

var m1 = function(){

//...Javascript模塊化編程(一):模塊的寫法

};

var m2 = function(){

//...Javascript模塊化編程(二):commonJS和AMD規范

};

return {

m1 : m1,

m2 : m2

};

})();

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容