js模拟引入命名空间

<!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>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值