惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 三生石上(FineUI控件)
雷峰网
雷峰网
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
博客园 - 叶小钗
The Cloudflare Blog
T
Tailwind CSS Blog
Hugging Face - Blog
Hugging Face - Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客
小众软件
小众软件
罗磊的独立博客
酷 壳 – CoolShell
酷 壳 – CoolShell
大猫的无限游戏
大猫的无限游戏
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 聂微东
量子位
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
宝玉的分享
宝玉的分享

博客园 - 烈马狂生

.net dll热插拔 收藏javascript 收藏flex开发 静态类 .net中简单的记录日志的办法 程序post - 烈马狂生 - 博客园 webservice调用的两种方法 virtual pc .netframework中的集合 Com Com+ .Net SSL和Https 关于高安全性的webservice处理 css总结 项目开发所需文档 [转]sql优化 在“运行”中常执行的命令。 软件开发分析的步骤 FCKeditor json
一段js代码的分析
烈马狂生 · 2008-05-22 · via 博客园 - 烈马狂生

 1 <html>
 2 <head>
 3 </head>
 4 <body>
 5 <script>
 6 var elong=new Object();
 7 var elongCommands = elong.Commands = new Object() ;
 8 elongCommands.LoadedCommands = new Object() ;
 9 
10 elongCommands.alertaa = function(xx)
11 {
12     alert(xx);
13 }
14 
15 elongCommands.RegisterCommand = function( commandName, command )
16 {
17     this.LoadedCommands[ commandName ] = command ;
18     this.alertaa(this.LoadedCommands[ commandName ]);
19 }
20 
21 elongCommands.RegisterCommand(1,"22");
22 </script>
23 </body>
24 </html>

1.js中也可以有类似名称空间的想法。第6,7,8行。其实就是3个名称空间:elong  elong.Commands  elong.Commands.LoadedCommands
对于当前的名称空间,要获取下一级的对象可用this获得。第17,18行表明了这点。
2.对象的属性可以像数组那样访问,所以这就提供了一种动态的增加对象的属性的方法,利用这点可以实现哈希表的概念。第17行表明了这点。
3.对象的生成有三种方式一种是一些固有的对象如object ,Date,二是直接量,三是定义构造函数. 第6,7,8就用的是new object。