JavaScript 对象的使用

创建 JavaScript 对象

JavaScript 中的几乎所有事务都是对象:字符串、数字、数组、日期、函数,等等。

你也可以创建自己的对象。

本例创建名为 "person" 的对象,并为其添加了四个属性:

实例

person=new Object();
person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person.eyecolor="blue";

更快捷的方法创建:
person={
firstname:"John",
lastname:"Doe",
age:50,eyecolor:"blue"
};

// !!!这种方法可以这样访问对象属性: person[x]

使用对象构造器来创建:

实例

function person(firstname,lastname,age,eyecolor)    //使用构造器来出创建自定义对象
{
this.firstname=firstname;      //添加属性
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
}

一旦您有了对象构造器,就可以创建新的对象实例,就像这样:(之前的那种不行的哦!!)

var myFather=new person("Bill","Gates",56,"blue");
var myMother=new person("Steve","Jobs",48,"green");

访问对象的属性

访问对象属性的语法是:

objectName.propertyName

把属性添加到 JavaScript 对象

您可以通过为对象赋值,向已有对象添加新属性: (即 你的对象里面的属性值 是可以更改的! )

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

person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person.eyecolor="blue";

x=person.firstname;

在以上代码执行后,x 的值将是:

Bill


把方法添加到 JavaScript 对象

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

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


/*用构造器模式自定义js对象*/
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;
}
}

/*测试*/
var hgy = new person("1","2","3","4");
alert(hgy.lastname);
hgy.changeName("a");
alert(hgy.lastname);

JavaScript 类

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

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

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

JavaScript for...in 循环

JavaScript for...in 语句循环遍历对象的属性。

语法

for (对象中的变量)
  {
  要执行的代码
  }

注释:for...in 循环中的代码块将针对每个属性执行一次。

实例

循环遍历对象的属性:

var person={
fname:"Bill",
lname:"Gates",
age:56
}; for (x in person) { txt=txt + person[x];    //它的x是从0开始递增的数 }






自定义对象 存在一种工厂模式 这里就不介绍了 用的最多个人感觉还是构造器模式


本文来自博客园,作者:咸瑜,转载请注明原文链接:https://www.cnblogs.com/bi-hu/p/14743565.html

原文地址:https://www.cnblogs.com/bi-hu/p/14743565.html