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

推荐订阅源

量子位
Vercel News
Vercel News
Microsoft Azure Blog
Microsoft Azure Blog
爱范儿
爱范儿
N
Netflix TechBlog - Medium
Google DeepMind News
Google DeepMind News
H
Help Net Security
罗磊的独立博客
The Cloudflare Blog
J
Java Code Geeks
博客园 - 叶小钗
I
InfoQ
B
Blog
Blog — PlanetScale
Blog — PlanetScale
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
腾讯CDC
月光博客
月光博客
博客园_首页
雷峰网
雷峰网
M
MIT News - Artificial intelligence
博客园 - 【当耐特】
美团技术团队
T
The Blog of Author Tim Ferriss
博客园 - 司徒正美

博客园 - 烈马狂生

.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。