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 相关文章推荐
JavaScript 检测浏览器和操作系统的脚本
Dec 26 Javascript
jquery tab标签页的制作
May 10 Javascript
JS面向对象编程详解
Mar 06 Javascript
JS版微信6.0分享接口用法分析
Oct 13 Javascript
js 递归和定时器的实例解析
Feb 03 Javascript
jQuery.Form实现Ajax上传文件同时设置headers的方法
Jun 26 jQuery
原生JS实现的双色球功能示例
Feb 02 Javascript
Vue2 添加数据可视化支持的方法步骤
Jan 02 Javascript
javascript实现手动点赞效果
Apr 09 Javascript
layer页面跳转,获取html子节点元素的值方法
Sep 27 Javascript
vue 导航内容设置选中状态样式的例子
Nov 01 Javascript
什么是SOLID
Mar 24 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
php class类的用法详细总结
2013/10/17 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
2014/08/04 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
Laravel6.0.4中将添加计划任务事件的方法步骤
2019/10/15 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
js变量作用域及可访问性的探讨
2006/11/23 Javascript
jquery 多行滚动代码(附详细解释)
2010/06/17 Javascript
基于jquery的地址栏射击游戏代码
2011/03/10 Javascript
js 获取class的元素的方法 以及创建方法getElementsByClassName
2013/03/11 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
深入分析Javascript事件代理
2016/01/30 Javascript
JQuery的attr 与 val区别
2016/06/12 Javascript
js canvas仿支付宝芝麻信用分仪表盘
2016/11/16 Javascript
原生JS实现简单放大镜效果
2017/02/08 Javascript
微信小程序出现wx.navigateTo页面不跳转问题的解决方法
2017/12/26 Javascript
Javascript格式化并高亮xml字符串的方法及注意事项
2018/08/13 Javascript
jQuery实现的五星点评功能【案例】
2019/02/18 jQuery
Node使用koa2实现一个简单JWT鉴权的方法
2021/01/26 Javascript
[48:37]EG vs OG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[04:45]DOTA2-DPC中国联赛正赛 iG vs LBZS 赛后选手采访
2021/03/11 DOTA
pygame加载中文名mp3文件出现error
2017/03/31 Python
python 递归遍历文件夹,并打印满足条件的文件路径实例
2017/08/30 Python
Python从零开始创建区块链
2018/03/06 Python
python利用微信公众号实现报警功能
2018/06/10 Python
Python实现多级目录压缩与解压文件的方法
2018/09/01 Python
python2 与 pyhton3的输入语句写法小结
2018/09/10 Python
python实现在线翻译功能
2020/03/03 Python
Python ATM功能实现代码实例
2020/03/19 Python
python代码实现图书管理系统
2020/11/30 Python
HTML5 File接口在web页面上使用文件下载
2017/02/27 HTML / CSS
html5 横向滑动导航栏的方法示例
2020/05/08 HTML / CSS
前端H5 Video常见使用场景简介
2020/08/21 HTML / CSS
国际经济与贸易专业求职信
2014/07/10 职场文书
创业计划书之美甲店
2019/09/20 职场文书
Python FuzzyWuzzy实现模糊匹配
2022/04/28 Python