<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<div></div>
<script>
var module = {
_count:0,
m1:function(){
console.log("11");
},
m2:function(){
console.log("22")
}
}
//module.m1();
//module._count = "5";
//这种写法使得module内的某个属性在函数外部被篡改
var module2 = (function(){
var _count1 = 0;
var m3 = function(){
console.log("33")
} ;
var m4 = function(){
console.log("44")
}
return{
m3:m3,
m4:m4
};
})()
//module2.m3();
//console.log(module2._count1)
//这种写法使得module内的属性不能再外部访问
module3 = {
a : "aa",
b : "bb"
};
var submodule = (function (mod){
mod.m5 = function () {
var modA = mod.a;
console.log(modA)
};
return mod;
})(module3);
//submodule.m5()
//module3.m5()
//console.log(module3.modA)
//函数内部可以访问到module3的引用,从submodule的内部获取到module3的内部属性
var module4 = new Object ({
school : function(num){
var studentNo = function(num){
console.log(num)
}(num)
return studentNo;
}
})
module4.school(1)
//这样外部传参调用起来不会污染
</script>
</body>
</html>
javascript模块化1
最新推荐文章于 2022-05-03 17:09:37 发布