一段js代码的分析

 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。

你可能感兴趣的:(js)