javaScript NameSpace 简单说明介绍


Posted in Javascript onJuly 18, 2013

    打造JavaScript命名空间其实很简单,只需要将自己的函数、对象、变量等放在一个伪命名空间中,即用一个匿名函数包装起来。
 

(function(){ 
    function $(id){ 
        return document.getElementById(id); 
    } 
    function alertNodeName(id){ 
        alert($(id).nodeName); 
    } 
})();

    使用这种伪命名空间可以封装并保护自己的所有函数、对象、变量,而且由于他们位于一个函数之中,相互之间也可以互相访问。不过伪命名空间之外的脚本就无法使用这些函数了。
    为了使这些函数可以被伪命名空间之外的脚本调用,我们首先创建一个window对象。
(function(){ 
    if(!window.myNamespace){window['myNameSpace']={};} 
    function $(id){ 
        return document.getElementById(id); 
    } 
    function alertNodeName(id){ 
        alert($(id).nodeName); 
    } 
})();

    然后将要全局化的函数重命名一下(也可以不重命名)赋给window对象window['myNameSpace']。
(function(){ 
    if(!window.myNamespace){window['myNameSpace']={};} 
    function $(id){ 
        return document.getElementById(id); 
    } 
    function alertNodeName(id){ 
        alert($(id).nodeName); 
    } 
    window['myNameSpace']['showNodeName'] = alertNodeName; 
})();

    这样我们就打造了一个自己的命名空间。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
 <HEAD> 
  <TITLE> New Document </TITLE> 
  <META NAME="Generator" CONTENT="EditPlus"> 
  <META NAME="Author" CONTENT=""> 
  <META NAME="Keywords" CONTENT=""> 
  <META NAME="Description" CONTENT=""> 
  <SCRIPT LANGUAGE="JavaScript"> 
  <!-- 
 (function(){ 
  function $(id){ 
   return document.getElementById(id); 
  } 
  function alertNodeName(id){ 
   alert($(id).nodeName); 
  } 
  window['myNameSpace'] = {}; 
  window['myNameSpace']['showNodeName'] = alertNodeName; 
 })(); 
    function Test(){ 
  myNameSpace.showNodeName("T"); 
 } 
  //--> 
  </SCRIPT> 
 </HEAD> 
 <BODY onload="Test()"> 
   <INPUT TYPE="text" NAME="T" ID="T" VALUE="Test"> 
 </BODY> 
</HTML>
Javascript 相关文章推荐
关于javascript document.createDocumentFragment()
Apr 04 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
Apr 25 Javascript
JQuery遍历json数组的3种方法
Nov 08 Javascript
JavaScript中document.forms[0]与getElementByName区别
Jan 21 Javascript
深入探究使JavaScript动画流畅的一些方法
Jun 30 Javascript
基于JavaScript实现简单的随机抽奖小程序
Jan 05 Javascript
jQuery插件开发汇总
May 15 Javascript
Js获取图片原始宽高的实现代码
May 17 Javascript
在web中js实现类似excel的表格控件
Sep 01 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
May 06 Javascript
Vue 实现前端权限控制的示例代码
Jul 09 Javascript
JavaScript实现拖拽功能
Feb 11 Javascript
JS获取鼠标坐标的实例方法
Jul 18 #Javascript
非常好用的JsonToString 方法 简单实例
Jul 18 #Javascript
转义字符(\)对JavaScript中JSON.parse的影响概述
Jul 17 #Javascript
JS随机生成不重复数据的实例方法
Jul 17 #Javascript
Javascript和HTML5利用canvas构建Web五子棋游戏实现算法
Jul 17 #Javascript
javascript和HTML5利用canvas构建猜牌游戏实现算法
Jul 17 #Javascript
js中如何把字符串转化为对象、数组示例代码
Jul 17 #Javascript
You might like
php实现表单提交上传文件功能
2018/05/28 PHP
jQuery.ajax 用户登录验证代码
2010/10/29 Javascript
js 金额文本框实现代码
2012/02/14 Javascript
js导出txt示例代码
2014/01/14 Javascript
jQuery元素的隐藏与显示实例
2015/01/20 Javascript
JS实现文字链接感应鼠标淡入淡出改变颜色的方法
2015/02/26 Javascript
JavaScript实现信用卡校验方法
2015/04/07 Javascript
JS实现不规则TAB选项卡效果代码
2015/09/16 Javascript
jquery ajax双击div可直接修改div中的内容
2016/03/04 Javascript
Node.js实现文件上传
2016/07/05 Javascript
在页面中引入js的两种方法(推荐)
2017/08/29 Javascript
vue-cli脚手架引入图片的几种方法总结
2018/03/13 Javascript
NodeJS 中Stream 的基本使用
2018/07/30 NodeJs
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
java实现单链表增删改查的实例代码详解
2019/08/30 Javascript
Python过滤函数filter()使用自定义函数过滤序列实例
2014/08/26 Python
详解Python实现按任意键继续/退出的功能
2016/08/19 Python
Python RabbitMQ消息队列实现rpc
2018/05/30 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
python 采用paramiko 远程执行命令及报错解决
2019/10/21 Python
Python如何脚本过滤文件中的注释
2020/05/27 Python
PyQt5 QDockWidget控件应用详解
2020/08/12 Python
美国男士西装打折店:Jos. A. Bank
2017/11/13 全球购物
英国领先的游戏零售商:GAME
2019/09/24 全球购物
Belstaff英国官方在线商店:Belstaff.co.uk
2021/02/09 全球购物
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上
2013/07/06 面试题
学前教育专业毕业生自荐信
2013/10/03 职场文书
家长给孩子的表扬信
2014/01/17 职场文书
文秘档案管理岗位职责
2014/03/06 职场文书
商务英语广告词大全
2014/03/18 职场文书
感谢信模板大全
2015/01/23 职场文书
MySQL Server 层四个日志
2022/03/31 MySQL
python三子棋游戏
2022/05/04 Python
mysql sql常用语句大全
2022/06/21 MySQL
Win11控制面板快捷键是什么?Win11打开控制面板的方法汇总
2022/07/07 数码科技
MySQL常用慢查询分析工具详解
2022/08/14 MySQL