JS 学习笔记 防止发生命名冲突


Posted in Javascript onJuly 30, 2009

为了防止发生命名冲突,可以建立自己的代码库。
就想
Js代码

ziggy_js=function(){} 
ziggy_js.ui=function(){} 
ziggy_js.ui.alerts=function(){} 
ziggy_js.ui.alerts.showErrorAlert=function(){ 
alert("An error occurred"); 
} 
ziggy_js.ui.alerts.showErrorAlert(); 
//以在其中定义类 
ziggy_js.ui.alerts.messageDisplayer=function(inMsg){ 
this.msg=inMsg; 
this.toString=function(){ 
return "msg="+this.msg; 
} 
} 
var v=new ziggy_js.ui.alerts.messageDisplayer("hello"); 
alert(v); 
ziggy_js=function(){} 
ziggy_js.ui=function(){} 
ziggy_js.ui.alerts=function(){} 
ziggy_js.ui.alerts.showErrorAlert=function(){ 
alert("An error occurred"); 
} 
ziggy_js.ui.alerts.showErrorAlert(); 
//也可以在其中定义类 
ziggy_js.ui.alerts.messageDisplayer=function(inMsg){ 
this.msg=inMsg; 
this.toString=function(){ 
return "msg="+this.msg; 
} 
} 
var v=new ziggy_js.ui.alerts.messageDisplayer("hello"); 
alert(v);

这样就建立了属于自己的代码库。当然在创建还要做些工作,在页面中也可直接导入
就想java里的包一样
首先要判断一下ziggy有没有已经被人用了
Js代码
//在ziggy_js.string.js中写 
if(typeof ziggy_js=='undefined'){ 
ziggy_js=function(){}; 
} 
ziggy_js.string=function(){} 
ziggy_js.string.test=function(inMsg){ 
alert(inMsg); 
} 
//在页面中可以导入 
<script src="ziggy_js.string.js"></script> 
//在ziggy_js.string.js中写 
if(typeof ziggy_js=='undefined'){ 
ziggy_js=function(){}; 
} 
ziggy_js.string=function(){} 
ziggy_js.string.test=function(inMsg){ 
alert(inMsg); 
} 
//在页面中可以导入 
<script src="ziggy_js.string.js"></script>

创建处理数组的包ziggy_js.array
Js代码
ziggy_js.array=function(){} 
//copy一个数组 
ziggy_js.array.copyArray=function(inSrcArray,inDestArray){ 
var i; 
for(i=0;i<inSrcArray.length;i++){ 
inDestArray.push(inSrcArrsy[i]); 
} 
return inDestArray; 
}//end copyArray 
ziggy_js.array.findInArray=function(inArray,inValue){ 
var i; 
for(i=0;i<inArray.length;i++){ 
if(inArray[i]==inValue){ 
return i; 
} 
} 
return -1; 
}//end findInArray 
..... 
ziggy_js.array=function(){} 
//copy一个数组 
ziggy_js.array.copyArray=function(inSrcArray,inDestArray){ 
var i; 
for(i=0;i<inSrcArray.length;i++){ 
inDestArray.push(inSrcArrsy[i]); 
} 
return inDestArray; 
}//end copyArray 
ziggy_js.array.findInArray=function(inArray,inValue){ 
var i; 
for(i=0;i<inArray.length;i++){ 
if(inArray[i]==inValue){ 
return i; 
} 
} 
return -1; 
}//end findInArray

.....
创建ziggy_js.browser的获得浏览器信息
Js代码
ziggy_js.browser=function(){} 
ziggy_js.browser.getBrowserIdentity=function(){ 
return navigator.appName+" "+navigator.appVersion; 
}//end getBrowserIdentity 
var brow=ziggy_js.browser.getBrowserIdentity(); 
alert(brow); 
ziggy_js.browser=function(){} 
ziggy_js.browser.getBrowserIdentity=function(){ 
return navigator.appName+" "+navigator.appVersion; 
}//end getBrowserIdentity 
var brow=ziggy_js.browser.getBrowserIdentity(); 
alert(brow);

处理时间的包。
Js代码
ziggy_js.dateTime=function(){} 
ziggy_js.dateTime.isLeapYear=function(inYear){ 
if((inYear%4==0&&inYear%100!=0)||inYear%400==0){ 
return true; 
}else{ 
return false; 
} 
}//end isLeapYear 
ziggy_js.dateTime.getNumberDaysInMonth=function(inMonth,inYear){ 
inMonth=inMonth-1; 
var leap_year=this.isLeapYear(inYear); 
if(leap_year){ 
leap_year=1; 
}else{ 
leap_year=0; 
} 
if(inMonth==3||inMonth==5||inMonth==8||inMonth==10){ 
return 30; 
}else if(inMonth==1){ 
return 28+leap_year; 
}else{ 
return 31; 
} 
}//end getNumberDaysInMonth 
var days=ziggy_js.dateTime.getNumberDaysInMonth(2,2007); 
alert(days); 
ziggy_js.dateTime=function(){} 
ziggy_js.dateTime.isLeapYear=function(inYear){ 
if((inYear%4==0&&inYear%100!=0)||inYear%400==0){ 
return true; 
}else{ 
return false; 
} 
}//end isLeapYear 
ziggy_js.dateTime.getNumberDaysInMonth=function(inMonth,inYear){ 
inMonth=inMonth-1; 
var leap_year=this.isLeapYear(inYear); 
if(leap_year){ 
leap_year=1; 
}else{ 
leap_year=0; 
} 
if(inMonth==3||inMonth==5||inMonth==8||inMonth==10){ 
return 30; 
}else if(inMonth==1){ 
return 28+leap_year; 
}else{ 
return 31; 
} 
}//end getNumberDaysInMonth 
var days=ziggy_js.dateTime.getNumberDaysInMonth(2,2007); 
alert(days);

慢慢完善
Javascript 相关文章推荐
JQuery Tab选项卡效果代码改进版
Apr 01 Javascript
jQuery实战之品牌展示列表效果
Apr 10 Javascript
在DWR中实现直接获取一个JAVA类的返回值的两种方法
Dec 25 Javascript
详解javascript立即执行函数表达式IIFE
Feb 13 Javascript
js实现截图保存图片功能的代码示例
Feb 16 Javascript
深入理解node.js之path模块
May 03 Javascript
jquery请求servlet实现ajax异步请求的示例
Jun 03 jQuery
Vue中使用vee-validate表单验证的方法
May 09 Javascript
vue中element-ui表格缩略图悬浮放大功能的实例代码
Jun 26 Javascript
vue-router二级导航切换路由及高亮显示的实现方法
Jul 10 Javascript
jQuery实现每日秒杀商品倒计时功能
Sep 06 jQuery
vue配置多代理服务接口地址操作
Sep 08 Javascript
javascript 处理HTML元素必须避免使用的一种方法
Jul 30 #Javascript
javascript 写的一个简单的timer
Jul 30 #Javascript
jquery imgareaselect 使用利用js与程序结合实现图片剪切
Jul 30 #Javascript
Javascript this指针
Jul 30 #Javascript
javascript 进度条 实现代码
Jul 30 #Javascript
JS input 数字验证代码
Jul 30 #Javascript
关于取不到由location.href提交而来的上级页面地址的解决办法
Jul 30 #Javascript
You might like
给多个地址发邮件的类
2006/10/09 PHP
PHP防CC攻击实现代码
2011/12/29 PHP
PHPThumb图片处理实例
2014/05/03 PHP
在win7中搭建Linux+PHP 开发环境
2014/10/08 PHP
thinkphp模板用法和内容输出实例
2014/11/28 PHP
PHP连接操作access数据库实例
2015/03/30 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
2019/01/17 PHP
使用Zookeeper分布式部署PHP应用程序
2019/03/15 PHP
分享精心挑选的23款美轮美奂的jQuery 图片特效插件
2012/08/14 Javascript
新增加的内容是如何将div的scrollbar自动移动最下面
2014/01/02 Javascript
jquery 无限级下拉菜单的简单实现代码
2014/02/21 Javascript
JavaScript仿支付宝密码输入框
2015/12/29 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
js实现用户输入的小写字母自动转大写字母的方法
2017/01/21 Javascript
spirngmvc js传递复杂json参数到controller的实例
2018/03/29 Javascript
使用Javascript简单计算器
2018/11/17 Javascript
解决vue addRoutes不生效问题
2020/08/04 Javascript
[04:36]DOTA2国际邀请赛 ti3精彩集锦
2013/08/19 DOTA
深入理解Python对Json的解析
2017/02/14 Python
深入探究Django中的Session与Cookie
2017/07/30 Python
tesserocr与pytesseract模块的使用方法解析
2019/08/30 Python
python实现同一局域网下传输图片
2020/03/20 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
索尼巴西商店:Sony巴西
2019/06/21 全球购物
什么是网络协议
2016/04/07 面试题
如何写好升职自荐信
2014/01/06 职场文书
六一儿童节演讲稿
2014/05/23 职场文书
党支部2014年度工作总结
2014/12/04 职场文书
感谢信模板大全
2015/01/23 职场文书
大班上学期个人总结
2015/02/13 职场文书
东京审判观后感
2015/06/01 职场文书
入队仪式主持词
2015/07/04 职场文书
幼儿园教师培训心得体会
2016/01/21 职场文书
导游词之新疆尼雅遗址
2019/10/16 职场文书
纯CSS实现酷炫的霓虹灯效果
2021/04/13 HTML / CSS
SpringBoot详解整合Redis缓存方法
2022/07/15 Java/Android