• JavaScript 创建对象


    2010-05-25 18:06JSON方式/对象直接量 等多种方法。大家可以快速的掌握js对象的建立。
    第一种:JSON方式/对象直接量
    格式:
    var 对象名 = {
    变量1: 变量1的值,
    变量1: 变量1的值,
    ……,
    函数1: function() {
    函数体
    },
    函数2: function() {
    函数体
    }//Note:最后的逗号要去除为了和IE兼容。
    };
    说明:
    (1) 大括号内直接填写变量或者函数;
    (2) 对象的内容与值以冒号分隔,成对出现;
    (3) 包含的变量或者函数之间以逗号分隔;
    (4) 函数需要写在function(){}的大括号之内。
    例子:
    var 对象名 = {
    name: “Vicky”,
    age: 26,
    eat: function() {
    alert(‘I wanna eat meat');
    },
    sleep: function() {
    alert(‘I wanna sleep');
    }
    };
    注释:类似的方式也叫做匿名类
    匿名类举例:
    {
    index: '//',
    reg: new RegExp('^//.*$'),
    css: "comment"
    }
    上面的方式创建了类,只是没赋给一个变量而已。
    第二种:function方式
    格式:
    function data() {
    this.变量1=变量1的值;
    this.变量2=变量2的值;
    ……;
    this.函数1= function() {
    函数体
    };
    this.函数2= function() {
    函数体
    };
    }
    说明:
    (1) 其内的变量或者函数前必需写上this关键字;
    (2) 对象的内容与值以等号分隔,成对出现;
    (3) 包含的变量或者函数之间以分号分隔。
    (4) 函数需要写在function(){}的大括号之内。
    例子:
    function data() {
    this.name=“Vicky””;
    this.age=26;
    this.eat=function() {
    alert(‘I wanna eat meat');
    };
    this.sleep=function() {
    alert(‘I wanna sleep');
    };
    }
    第三种:原型方式
    格式:
    var 对象名 = {};
    对象名.prototype.变量1=变量1的值;
    对象名.prototype.变量2=变量2的值;
    ……;
    对象名.prototype.函数1= function() {
    函数体
    };
    对象名.prototype.函数2= function() {
    函数体
    };
    ……;
    说明:
    (1) 初始对象体内可以不定义任何东西;
    (2) 在要定义的变量前加“对象名.prototype.”的格式;
    (3) 对象的内容与值以等号分隔,成对出现;
    (4) 包含的变量或者函数之间以分号分隔,也可以省去分号。
    (5) 函数需要写在function(){}的大括号之内。
    例子:
    var data = {};
    data.prototype. name ="Vicky”;
    data.prototype. age =20;
    data.prototype. eat = function() {
    alert(‘I wanna eat meat');
    };
    data.prototype. sleep= function() {
    alert(‘I wanna sleep');
    };
    第四种:create方式
    该方式利用了Prototype JavaScript组件库。
    格式:
    var 对象名 = Class.create();
    Object.extend(对象名.prototype, {
    变量1: 变量1的值,
    变量1: 变量1的值,
    ……,
    函数1: function() {
    函数体
    },
    函数2: function() {
    函数体
    },
    ……
    });
    说明:
    (1) 对象的创建使用了Prototype库中的Class.create()函数;
    (2) 对象的内容使用Prototype库中的Object.extend()函数来扩展;
    (3) 被扩展的对象在传入Object.extend函数时一定要带上prototype,
    (4) 扩展内容被大括号包含,其内与JSON方式的定义格式完全相同。
    例子:
    var data = Class.create();
    Object.extend(dta.prototype, {
    name: "Vicky",
    age: 20,
    eat: function() {
    alert(‘I wanna eat meat');
    },
    sleep: function() {
    alert(‘I wanna sleep');
    }
    });
    其实,JS对象的定义还有其它的方式,你也可以用上面4种进行组合定义,这显出了JS作为动态语言的自由性。
    JS对象的创建正规方法如下:
    var d1 = new Data();
    JS对象变量的引用方式有两种:
    (1) 点号方式引用,如,data.name。
    (2) 数组方式引用,如,data[‘name']。

  • 相关阅读:
    愿你始终不移真心
    beautiful sentences
    (转)Design Pattern 新解(非常经典贴近生活)
    简述.Net下的应用程序授权。(转)
    thin的调试汇集
    Asp.net1.0 升级 ASP.NET 2.0 的几个问题总结 (转)
    Microsoft .NET Pet Shop 4 架构与技术分析 (转)
    面向对象编程,我的思想[上](转)
    七个问题:经济学常识 (转),真的很好,值的思考
    .NET控件收集(转)
  • 原文地址:https://www.cnblogs.com/mylife_001/p/1931444.html
Copyright © 2020-2023  润新知