JS学习笔记:防止发生命名冲突
为了防止发生命名冲突,可以建立自己的代码库。
就想
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);
转载于:https://www.cnblogs.com/qqflying/archive/2010/10/27/1862256.html
JS学习笔记:防止发生命名冲突相关推荐
- sizzle.js学习笔记利用闭包模拟实现数据结构:字典(Map)
sizzle.js学习笔记利用闭包模拟实现数据结构:字典(Map) 这几天学习和查看了jQuery和Property这两个很流行的前端库的御用选择器组件Sizzle.js的源代码,收获还是相对多的!之 ...
- ArcGIS JS 学习笔记4 实现地图联动
原文:ArcGIS JS 学习笔记4 实现地图联动 1.开篇 守望屁股实在太好玩了,所以最近有点懒,这次就先写个简单的来凑一下数.这次我的模仿目标是天地图的地图联动. 天地的地图联动不仅地图有联动,而 ...
- Vue.js 学习笔记 八 v-for
v-for指令,是用来循环的,常用的情况有以下4种 <div id="divApp"><!--迭代数字--><p v-for="n in 5 ...
- JS学习笔记(五)函数类型、箭头函数、arguments参数、标签函数
JS学习笔记(五) 本系列更多文章,可以查看专栏 JS学习笔记 文章目录 JS学习笔记(五) 一.函数 1. 函数定义 2. 方法( 对象 + 函数 ) 二.函数参数及返回值 1. 传递原始类型参数 ...
- Vue.js学习笔记 2022 04 17
Vue.js学习笔记 1 Vue.js基础 Vue.js介绍 vuejs 渐进式 JavaScript 框架 Vue.js 如何应用 1 在普通html项目中,引入VUE.JS Hb 的项目 生成的 ...
- js学习笔记82——操作内联样式
js学习笔记82--操作内联样式 通过js修改元素的样式 查参考手册 内联样式 读取元素的样式 看如下代码 <!DOCTYPE html> <html lang="en&q ...
- 千锋Node.js学习笔记
千锋Node.js学习笔记 文章目录 千锋Node.js学习笔记 写在前面 1. 认识Node.js 2. NVM 3. NPM 4. NRM 5. NPX 6. 模块/包与CommonJS 7. 常 ...
- 遇见 vue.js --------阿文的vue.js学习笔记(4)------模板语法
** 新学习新征程,我们一起踏上学习 vue.js的新长征 遇见 vue.js --------阿文的vue.js学习笔记(1)-----初识vue.js 遇见 vue.js --------阿文的v ...
- backbone.js学习笔记
backbone.js学习笔记 之前只接触过jQuery,看来Backbone是除了jQuery的第二大JS框架... backbone到底是个啥? 其实刚开始我也不知道=_=,我是这周二才听说居然还 ...
最新文章
- 安全应用与管理 中国安防下一个十年
- str python3_python3 str(字符串)
- (转载)Linux OOM Killer个人总结
- 干货丨深度迁移学习方法的基本思路(文末送书)
- bootstrap----表格
- CS229 6.18 CNN 的反向传导算法
- 网站如何和服务器匹配,匹配服务器
- 元宇宙是个啥?送4本科普好书
- hadoop hdfs空间满后重新启动不了
- 高中信息技术——GoldWave音频处理刷题点整理
- 宏基ACER E1-471G拆机心得及注意事项
- 球面投影全景图快速拼接
- spring容器的refresh方法分析
- 移动端架构师学习路线
- 有没有什么赚钱的副业?分享,适合学生赚钱的30个副业!
- 小米9/9 SE于3月19日开放购买!雷军:螺丝刀已备好,百万出货
- CorelDRAW苹果水晶球详细制作
- java工作中最有成就感的事_工作中最有成就感的事
- NTP 时区+时间同步
- 根据 Excel 数据表的内容和 Word 模板文件,批量生成 Word 文档
热门文章
- 怎么把图片存入mysql_如何把图片存储到mysql数据库中
- 直播预告丨企服企业如何科学搭建规模化获客体系?
- bzoj4383(拓扑排序)
- so加载报错:dlopen failed: couldn't map ... Permission denied
- 使用xmake优雅地描述工程
- [javaSE] 多线程(守护线程)
- Bzoj 2453: 维护队列 Bzoj 2120: 数颜色 分块,bitset
- Android使用开源项目Xutils实现多线程下载文件
- 自己动手制作(DIY)一个Mini-Linux系统
- heartbeat自带的断网切换功能-ipfail