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 的 trim 函数的代码
Aug 13 Javascript
学习ExtJS(一) 之基础前提
Oct 07 Javascript
javascript 获取url参数和script标签中获取url参数函数代码
Jan 22 Javascript
jquery动态添加option示例
Dec 30 Javascript
javascript实现网页子页面遍历回调的方法(涉及 window.frames、递归函数、函数上下文)
Jul 27 Javascript
js实现Select列表内容自动滚动效果代码
Aug 20 Javascript
基于jQuery实现返回顶部实例代码
Jan 01 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
Jul 27 Javascript
javaScript如何跳出多重循环break、continue
Sep 01 Javascript
原生js实现密码输入框值的显示隐藏
Jul 17 Javascript
Vue+axios实现统一接口管理的方法
Jul 23 Javascript
LayUi使用switch开关,动态的去控制它是否被启用的方法
Sep 21 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 和 MySQL 基础教程(一)
2006/10/09 PHP
PHP获取当前url的具体方法全面解析
2013/11/26 PHP
Yii2设置默认控制器的两种方法
2017/05/19 PHP
Laravel学习基础之migrate的使用教程
2017/10/11 PHP
JQuery.closest(),parent(),parents()寻找父结点
2012/02/17 Javascript
怎么清空javascript数组
2013/05/11 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
JS实现图片放大镜效果的方法
2015/02/27 Javascript
javascript的函数劫持浅析
2016/09/26 Javascript
Ajax+FormData+javascript实现无刷新表单信息提交
2016/10/24 Javascript
jQuery命名空间与闭包用法示例
2017/01/12 Javascript
jquery获取下拉框中的循环值
2017/02/08 Javascript
利用JS对iframe父子(内外)页面进行操作的方法教程
2017/06/15 Javascript
Vue2 模板template的四种写法总结
2018/02/23 Javascript
轻松搞定jQuery+JSONP跨域请求的解决方案
2018/03/06 jQuery
seajs下require书写约定实例分析
2018/05/16 Javascript
浅谈Vue初学之props的驼峰命名
2018/07/19 Javascript
你可能不知道的CORS跨域资源共享
2019/03/13 Javascript
python mysqldb连接数据库
2009/03/16 Python
基于Python实现文件大小输出
2016/01/11 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
关于Python内存分配时的小秘密分享
2019/09/05 Python
python实现超市管理系统(后台管理)
2019/10/25 Python
Python解析json代码实例解析
2019/11/25 Python
python pymysql链接数据库查询结果转为Dataframe实例
2020/06/05 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
2020/07/14 Python
家佳咖啡店创业计划书
2013/12/27 职场文书
小学语文课后反思精选
2014/04/25 职场文书
酒店爱岗敬业演讲稿
2014/09/02 职场文书
暑假社会实践心得体会
2014/09/02 职场文书
网络营销计划
2015/01/17 职场文书
长江三峡导游词
2015/01/31 职场文书
小升初自荐信范文
2015/03/05 职场文书
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL
Redis keys命令的具体使用
2022/06/05 Redis
Django框架中表单的用法
2022/06/10 Python