第五页:对象的优点
                 
                 
                  
                  
                  我们已经看过许多有关
                  
                   JavaScript
                  
                  现成的对象和它们的用法的
                   
                  例子:如
                  
                   Window, Image, Document, 
          Form
                  
                  和其他一些
                   
                  对象。记住:一个对象只不过是一种特殊类型的数据,由属性
                   
                  和方法组成。属性是对象本身的一些东西,而方法则是能够加
                   
                  之于对象上的一些操作。
                  
                 
                  
                  
                  比如,
                  
                   Window
                  
                  对象有自己的属性,像
                  
                   
                    window.status
                   
                   ,
                  
                  它可
                   
                  以被读取与设置。通过把一个字符串设置成
                  
                   Window
                  
                  对象的
                   
                  
                   status
                  
                  属性,这个字符串将会显示在窗口的状态条里。
                  
                   Window
                  
                   
                  也有自己的方法,如
                  
                   
                    window.focus()
                   
                   ,
                  
                  即把窗口聚焦弹到前面。
                   
                  如果你对这些都不熟悉的话,你也许该去看看
                  
                   基础教程第五天
                  
                   
                  的课程。
                  
                 
                  
                  
                  使用对象给我们组织信息提供了一个很好的手段。首先我们看
                   
                  看现实生活中的对象。比如说,一只猴子就是一个对象。它有
                   
                  高度,宽度,毛发等等属性。所有的猴子都有相同的这些属性
                   
                  类型,是属性的值的不同才使一只猴子与其它猴子区别开来。
                   
                  猴子也有自己的方法,如玩儿
                  
                   
                    play()
                   
                  
                  ,吃
                  
                   
                    eat()
                   
                  
                  ,睡
                  
                   
                    sleep()
                   
                  
                  等。
                  
                 
                  
                  
                  对象很好理解还因为它能够保持有关词的“感觉”。例如
                   
                  
                   JavaScript
                  
                  中的聚焦方法
                  
                   
                    focus()
                   
                  
                  ,很显然就是使什么东西成为
                   
                  焦点。当聚焦方法作用到窗口对象时,它使该窗口弹到前面。
                   
                  而模糊则做相反的事儿。你可以试试:
                  
                 
                  
                  
                  
                   打开一个小窗口
                  
                  
                 
                  
                  
                  按下面的链接来看看小窗口如何弹到前面:
                   
                  
                   
                    little_window.focus()
                   
                   小窗口聚焦
                   
                    ;
                   
                  
                  
                    
                  
                  
                 
                  
                  
                  但当你把聚焦方法作用到一个文本框时,它使该文本框出现一
                   
                  个等待你输入的光标。
                  
                 
                 
                  
                  
                  激活第一个文本框
                  
                   :
                    
                   
                    window.document.the_form.the_first_text.focus();
                   
                    
                  
                  激活第二个文本框
                  
                   :
                   
                     
                    window.document.the_form.the_second_text.focus();
                   
                  
                  
                 
                  
                  
                  奇怪吗
                  
                   ? 
          JavaScript
                  
                  知道对窗口的聚焦和对文本框的聚焦做的
                   
                  不是一件事。在这两种情况里,聚焦的意思是一样的,所以很
                   
                  自然都用了聚焦这个名字。但同样的聚焦方法对不同的对象会
                   
                  做略微不同的事,这也很好理解。这种同一个方法因对象不同
                   
                  而做不同的事情称为“多态性”,这也是面向对象程序设计的
                   
                  基础。
                  
                 
                  
                  
                  就象同样的方法因对象不同而表现不同一样,对于不同的对象,
                   
                  同样的属性也可以意味着不同的意思。比如
                  
                   
                    length
                   
                  
                  属性,在字
                   
                  符串和数组两类对象中都有这个属性。
                  
                   
                    string.length
                   
                  
                  返回的是
                   
                  字符串的长度,
                  
                   而
                   
                    array.length
                   
                  
                  返回的则是数组的元素个数。
                   
                  两个的属性都叫
                  
                   length
                  
                  
                   ,但它们的意义随对象的不同而略有差
                    
                   别。
                  
                  
                 
                  
                   
                   
                   使用对象也使得代码的拷贝与粘贴更容易了。如果你有一个很
                    
                   好的对象库,你可以直接把整个对象拷贝下来用在你自己的
                   
                    script
                   
                    
                   中任何需要的地方,如果你没有一个组织得很清晰的对象库要
                    
                   作到这一点就难多了。
                   
                 
                 
                  
                   
                   
                   既然对象这么好用,
                   
                    JavaScript
                   
                   给你提供了创建自己对象的
                    
                   能力。
                   
                    >>
                   
                  
                  
                 
                  
                   
                    JavaScript高级教程
                   
                  
                  
                    
                  
                  
                   
                    第一页
                   
                   
                    
                     JavaScript
                    
                    高级教程
                    
                     -
                    
                    第
                    
                     4
                    
                    天
                   
                    
                   
                    第二页
                   
                   
                    图象映射与
                    
                     JavaScript
                    
                   
                   
                     
                   
                   
                    第三页
                   
                   
                    预装图象 - 
          是什么
                    
                     ?
                    
                   
                   
                     
                   
                   
                    第四页
                   
                   
                    预装图象 - 
          怎么做?
                   
                   
                     
                   
                   
                    第五页
                   
                   对象的优点
                    
                   
                    第六页
                   
                   
                    创建你自己的对象
                   
                    
                   
                    第七页
                   
                   
                    你的面向对象的虚拟宠物
                   
                    
                   
                    第八页
                   
                   
                    计算字符串
                   
                    
                   
                    第九页
                   
                   
                    获取难以索引的对象
                   
                    
                   
                    第十页
                   
                   
                    另一种获取难以索引的对象的手段
                   
                    
                   
                    第十一页
                   
                   
                    第四天课程复习
                   
                  
                  
                 
                  [
                  
                   第1课
                  
                  ][
                  
                   第2课
                  
                  ][
                  
                   第3课
                  
                  ][第4课][
                  
                   第5课
                  
                  ]
                  
                  
                 
                  
                  
                 
                 
                 |