<万博manbetx平台> 命名空间模式 - JavaScript对象与常用设计模式 - 万博manbetx平台中文网
点击切换帐号登陆
帐号密码登陆

命名空间模式

1.命名空间模式
============

**知识点**
1.全局对象window
2.自定义命名空间
3.命名空间的作用

--------------------------------------------------------

1.全局对象window
--------------
全局添加的成员会自动成为全局对象window的属性

--------------------------------------------------------

2.自定义命名空间
-------------
可以收编用户自定义的数据,用户数据自动成为命名空间对象的属性

--------------------------------------------------------

3.命名空间的作用
-------------
- 减少全局变量数量;
- 避免命名冲突和过长的标识符名称
- 防止与第三方代码库命名冲突

--------------------------------------------------------

### 示例代码: code/demo01.万博manbetx平台

```万博manbetx平台
<!DOCTYPE 万博manbetx平台>
<万博manbetx平台>
<head>
    <meta charset="UTF-8">
    <title>命名空间模式</title>
</head>
<body>
<script>
    // 命名空间模式优点:
    // 1.减少全局变量数量;
    // 2.避免命名冲突和过长的标识符名称
    // 3.防止与第三方代码库命名冲突

    var str = 'This a string';
    var arr = [1,2,3,4];
    var obj = {};
    function Stu() {   //构造函数

    }

    // 你会发现,以上数据全全部创建到全局对象window上,这是不推荐的,也不可取的
    // 这时可以考虑,自定义一个全局变量,做为容器,来收集这些自定义的成员

    // 创建全局对象,并初始化为一个空的对象字面量,对象是键值对集合,非常适合收编这些全局成员
    // 将这个全局对象,视做命名空间,  用户自定义的数据,全部做为这个空间的成员属性
    var APP = {};

    // 将以上数据做为APP对象的属性,进行添加
    APP.str = 'This a string';
    APP.arr = [1,2,3,4];
    APP.obj = {};
    APP.Stu = function () {

    }

    // 现在我们用一个全局对象,就收编了所有的用户自定义数据,而之前需要在全局对象window上创建多个全局成员
    // 显示,使用这个叫做命名空间的自定义全局变量, 是非常有必要的

</script>
</body>
</万博manbetx平台>
```


任务

?不会了怎么办
无数据提示暂无评论哟...我要评论
网站导航
标签地图
学习路径
视频教程
开发软件
旗下子站
技术文章
文档工具
关于我们
企业合作
人才招聘
联系我们
讲师招募
QQ交流群
QQ官方交流群
微信公众号
微信公众号