命名空间

管理变量,防止污染全局,适用于模块化开发

1. 前缀后缀

为了防止变量名,函数名,类名和其他人的冲突,最开始的方法是在名字上加前缀后缀,这样可读性不高。

2. 命名空间法

//命名空间org
var org = {  //定义对象department1 : {jicheng : {    //用对象的方式在相应的部分定义自己的变量name : 'abc',age : 123},xvming : {name : 'bcd',age : 456}},department2 : {zhangsan : {},lisi : {}}
}console.log(org.department1.jicheng.name);var jicheng = org.department1.jicheng;
console.log(jicheng.name);

3. 利用闭包

命名空间的使用依旧比较麻烦,现在也不常使用,而在实际开发中,为了防止变量冲突,或污染全局变量,经常会利用闭包的性质。

var name = 'abc';var init = (function () {var name = 'bcd';function callName() {console.log(name);}return function() {callName();}
}())var initDeng = (function () {var name = 'deng';function callName() {console.log(name);}return function () {callName();}
}())init();

16.JavaScript学习笔记——命名空间相关推荐

  1. JavaScript学习笔记之数组(二)

    JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...

  2. JavaScript学习笔记(三)--操作运算符

    JavaScript中的运算符有很多,主要分为算术运算符,比较运算符,逻辑运算符,三目运算符.一元运算符.位运算符等.这些运算符都有一些属于自己的运算规则,下面就为大家介绍一下JavaScript中的 ...

  3. JavaScript 学习笔记(第三天)

    JavaScript 学习笔记(第三天) 一.数组 1.1.数组的基础 1.2.数据类型分类 1.3.创建数组 1.3.1.字面量创建一个数组 1.3.2.内置构造函数创建数组 1.4.数组的基本操作 ...

  4. JavaScript 学习笔记(二)

    JavaScript 学习笔记(二) 文章目录 JavaScript 学习笔记(二) 一 JSON 1. JSON 对象 什么是JSON对象 JSON对象与Javascript对象的区别 在JavaS ...

  5. JavaScript学习笔记(四)---闭包、递归、柯里化函数、继承、深浅拷贝、设计模式

    JavaScript学习笔记(四)---闭包.递归.柯里化函数.继承.深浅拷贝.设计模式 1. 匿名函数的使用场景 2.自运行 3.闭包 3.1前提: 3.2闭包 4.函数对象的三种定义方式 5.th ...

  6. 千锋JavaScript学习笔记

    千锋JavaScript学习笔记 文章目录 千锋JavaScript学习笔记 写在前面 1. JS基础 1.1 变量 1.2 数据类型 1.3 数据类型转换 1.4 运算符 1.5 条件 1.6 循环 ...

  7. JavaScript学习笔记之对象及继承

    JavaScript学习笔记之对象及继承 对象属性 ES5中有两种属性,数据属性和访问器属性. 数据属性包括[[writable]](能否修改属性的值).[[value]]等等: 访问器属性包括[[C ...

  8. JavaScript学习笔记(五)---cookie、Proxy、服务器、PHP语言、http协议、同步异步、事件轮循机制、ajax编写、接口

    JavaScript学习笔记(五)---cookie.Proxy.服务器.PHP语言.http协议.同步异步.事件轮循机制.ajax编写.接口 1.cookie 1.1cookie概念 1.2cook ...

  9. Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

最新文章

  1. JavaEE的13种核心技术规范
  2. SqlDataReader对象的NextResult方法读取存储过程多个结果集
  3. lia人是什么意思_69年属鸡人终身灾难是什么意思
  4. float浮点数的四舍五入
  5. C++函数参数传递--值传递和地址传递
  6. android模拟win98中文版,Win98模拟器
  7. win11 JDK环境变量的配置
  8. C语言_写简易吃豆人小游戏
  9. 【论文笔记】视频分类系列 Appearance-and-Relation Networks for Video Classification (ARTNet)
  10. 马云卸任演讲全文:青山不改 绿水长流 后会有期
  11. 驱动程序和触摸屏的下载
  12. 【Angular】ng-zorro-ant表格切换pageSize页数选择器不生效解决方案
  13. [FPGA]1 MRCC与SRCC学习
  14. 微信小程序radio单选框如何修改宽高及选中样式
  15. DevOps工具链 - 2021
  16. VIM 的 commentary 插件
  17. 【JVM】jvm的双亲委派机制
  18. OICQ通讯协议_详述
  19. 项目成员责任分配矩阵
  20. C/C++公司人员工资管理系统

热门文章

  1. 怎么区分三种基本放大电路?
  2. CTF——web个人总结
  3. 寒假集训1字符串专题
  4. ZZULIOJ 2348: 小明的第一份实习任务(前缀和)
  5. 七、数据结构:线性表-栈(后进先出)
  6. 取得最高系统管理员权限的有效方法
  7. 微信分享自定义多次分享设置
  8. 川崎机器人 K-ROSET 仿真软件插件开发
  9. 目标检测与识别算法综述:从传统算法到深度学习(二)
  10. 深圳市的企业提交等保备案申请需要提交哪些资料