JavaScript对象

JavaScript 对象

  JavaScript 中的所有事物都是对象:字符串、数值、数组、函数...

  此外,JavaScript 允许自定义对象。

所有事物都是对象

  JavaScript 提供多个内建对象,比如 String、Date、Array 等等。 对象只是带有属性和方法的特殊数据类型。

  布尔型可以是一个对象。

  数字型可以是一个对象。

  字符串也可以是一个对象。

  日期是一个对象。

  数学和正则表达式也是对象。

  数组是一个对象。

  甚至函数也可以是对象。

创建 JavaScript 对象

  通过 JavaScript,您能够定义并创建自己的对象。

  创建新对象有两种不同的方法:

  定义并创建对象的实例

  使用函数来定义对象,然后创建新的对象实例

创建直接的实例

  这个例子创建了对象的一个新实例,并向其添加了四个属性:

  例子:

  person=new Object();
  person.firstname="John";
  person.lastname="Doe";
  person.age=50;
  person.eyecolor="blue";

使用对象构造器

  本例使用函数来构造对象:

  function person(firstname,lastname,age,eyecolor)

     { this.firstname=firstname;

      this.lastname=lastname;

      this.age=age;

      this.eyecolor=eyecolor;

    }

在JavaScript中,this通常指向的是我们正在执行的函数本身,或者是指向该函数所属的对象(运行时)。

创建 JavaScript 对象实例

  一旦您有了对象构造器,就可以创建新的对象实例,就像这样:

  var myFather=new person("John","Doe",50,"blue");
  var myMother=new person("Sally","Rally",48,"green");
 

把属性添加到 JavaScript 对象

  您可以通过为对象赋值,向已有对象添加新属性:

  假设 personObj 已存在 - 您可以为其添加这些新属性:firstname、lastname、age 以及 eyecolor:

    person.firstname="John";
    person.lastname="Doe";
    person.age=20;
    person.eyecolor="blue";
    x=person.firstname;
 

把方法添加到 JavaScript 对象

  方法只不过是附加在对象上的函数。

  在构造器函数内部定义对象的方法:

  function person(firstname,lastname,age,eyecolor)
  {
      this.firstname=firstname;
      this.lastname=lastname;
      this.age=age;
      this.eyecolor=eyecolor;

      this.changeName=changeName;
      function changeName(name)
      {
          this.lastname=name;
      }
  }

  changeName() 函数 name 的值赋给 person 的 lastname 属性。

现在您可以试一下:

  myMother.changeName("Doe");
 

JavaScript 类


  JavaScript 是面向对象的语言,但 JavaScript 不使用类。


  在 JavaScript 中,不会创建类,也不会通过类来创建对象(就像在其他面向对象的语言中那样)。


  JavaScript 基于 prototype,而不是基于类的。

 
原文地址:https://www.cnblogs.com/wangdayexinyue/p/10998705.html