JavaScript中所有的事物都是对象:
字符串,数组,函数,数值等此外JavaScript允许自定义对象
JavaScript提供许多内置对象,比如String,Date,Array等等
对象只是带有属性和方法的特殊数据类型
访问对象的属性
objectName.propertyName
访问对象的方法
objectName.methodName()
创建JavaScript对象:
通过JavaScript您能够定义并创建自己的对象。
创建对象有两种不同的方法:
1.定义并创建对象的实例
2.使用函数来定义对象,然后创建新的对象实例
1.eg:创建对象的直接实例:
这个例子创建了对象的一个新实例,并向其添加了四个属性:
person=new Object(); person.firstname="Bill"; person.lastname="Gates"; person.age=56; person.eyecolor="blue";
替代语法(使用对象 literals):literals字面量
person={firstname:"John",lastname:"Doe",age:50,eyecolor:"blue"};
使用对象构造器:
使用函数构造对象:
<!DOCTYPE html>
<html>
<body>
<script>
function person(firstname,lastname,age,eyecolor)
{
this.firstname=firstname;
this.lastname=lastname;
this.age=age;
this.eyecolor=eyecolor;
}
myFather=new person("Bill","Gates",56,"blue");
document.write(myFather.firstname + " is " + myFather.age + " years old.");
</script>
</body>
</html>
创建 JavaScript 对象实例
一旦您有了对象构造器,就可以创建新的对象实例:
var myFather=new person("Bill","Gates",56,"blue"); var myMother=new person("Steve","Jobs",48,"green");
把属性添加到JavaScript对象
可以通过对象赋值,向已有对象添加新属性。
假设 personObj 已存在:
person.firstname="Bill"; person.lastname="Gates"; person.age=56; 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;
}
}
JavaScript类
JavaScript是面向对象的语言,但JavaScript不使用类
在JavaScript中,不会创建类,也不会通过类来创建对象(就像在其他面向对象中的语言那样)。
JavaScript是基于prototype,而不是基于类的。
JavaScript for---in循环
javaScript for---in语句循环遍历对象的属性
var person={fname:"Bill",lname:"Gates",age:56};
for (x in person)
{
txt=txt + person[x];
}