zoukankan      html  css  js  c++  java
  • JavaScript基础-面向对象编程<2>

    2.动态添加,修改和删除对象属性和方法

    例如:用类Object()创建一个空对象user,然后修改其行为。

    (1) 添加属性

    var user=new Object(); //创建一个没有属性和方法的空对象
    user.name="jack"; //添加属性name
    user.age=21; //添加属性age
    user.sex="male"

    若输出结果,可用alert(user.name)等语句进行显示。

    (2)添加方法

    针对前面的空对象user,添加一个方法 alert():

    user.alert=function(){
            alert("my name is:"+this.name);
      }

    调用:user.alert(); //可显示其名字为jack

    (3)修改属性和方法

    修改就是用新属性替换旧属性。

    例如:

    user.name="tom";
    user.alert=function(){
          alert("hello,"+this.name); //这时的方法中name属性已经已经替换为tom
    }

    若用弹出对话框显示其内容,user.alert()值为 "hello,tom"。

    (4)删除属性和方法

    其实,删除属性或方法就是将其值定义为undefined,即

    user.name=undefined;
    user.alert=undefined;

    3.使用大括号语法创建无类型对象

    其语法为:

    {
        property1:statement,
        property2:statement,
        .......,
        propertyN:statementN
    
    }

    这里通过使用大括号,使多个属性或方法成为一个组,实现对象的定义。

     示例 :使用大括号语法创建一对象

    <script language="javascript" type="text/javascript">
       var obj={ }; //定义一个空对象, 等同于 var obj=new Object();
       var user={
               name:"jack", //定义name属性并赋初值
               favoriteColor:["red","green","black"], //定义颜色数组
               hello:function(){ //定义方法
                        alert("hello"+this.name);
                  },
               sex:"male"
       }
          user.hello(); //调用方法
    
    </script> 

    4.prototype对象

    每个函数其实也是一个对象,它们对应的类是 function. 它们具有特殊的身份,每个函数对象都具有一个子对象prototype,即prototype表示了该函数的原型。而函数也是

    类,prototype就是表示了一个类的成员集合。

     既然 protoype是一个对象,也可以动态地对其属性和方法进行修改

     例如:

    function class1(){
         // 空函数
    }
    
    class1.protoype.method=function(){ // 增加方法
             
               alert("it's a text method");
    }
        var obj1 =new class1();
        obj1.method; //调用对象方法
  • 相关阅读:
    浅释一下,为什么要使用接口?
    枚举的简单使用
    最富有的人
    拜读websharp时,发现的几处问题(二)
    如何规划职业发展道路如何规划职业发展道路(ZT)
    在.NET环境中使用单元测试工具NUnit(ZT)
    [转贴]不得不知的几个可怕信息!
    ASP.NET中数据导入至Excel
    拜读websharp时,发现的几处问题(一)
    合并DataGrid相同单元格
  • 原文地址:https://www.cnblogs.com/blinzhang/p/4491908.html
Copyright © 2011-2022 走看看