<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'/>
<title>模拟引入命名空间</title>
</head>
<body>
<script>
(function(){
//模拟引入命名空间的方法
using = function(namespace){
var arr = namespace.split(".");
var len = arr.length;
var runJS = "";
for(var i=0; i<len; i++){
if(i >= 1){
runJS += ".";
}
runJS += arr[i];
eval("if(typeof(" + runJS + ") === 'undefined'){" + runJS + " = function(){}}");//运行js代码, 实现变量初始化
}
}
using("MyLib.Message");//生成 全局变量 MyLib 和 MyLib.Message, 初始值为 function (){}
MyLib.prototype.Alert = MyLib.Alert = function(val){
alert(val);
}
MyLib.Message.prototype.Alert = MyLib.Message.Alert = function(val){
alert(val);
}
})();
var m = new MyLib();
m.Alert("需要实例化1");
MyLib.Alert("静态方法1");
var mm = new MyLib.Message();
mm.Alert("需要实例化2");
MyLib.Message.Alert("静态方法2");
// using("EasyLib");//库
// using("EasyLib.Cookies");//cookies模块
// using("EasyLib.Url");//url模块
// using("EasyLib.Reg");//正则模块
// using("EasyLib.Date");//日期模块
// using("EasyLib.Str");//字符模块
// using("EasyLib.Ctl");//自定义控件模块
</script>
</body>
</html>