JavaScript学习笔记(4)
JavaScript对象
JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。
在 JavaScript 中,对象是拥有属性和方法的数据。
属性和方法
属性是与对象相关的值
方法是能够在对象上执行的动作
1 创建JavaScript对象:有两种方法创建JavaScript对象
(1)使用Object类定义并创建对象的实例
如:perso = new Object();
对象创建完成后,可以为其添加属性
如:person.id=1;
person.name="Jack";
也可以同构替代语法
如:person={id:1,name:Jack};
(2)使用对象构造器创建对象
function person(_id,_name)
{
this.id = _id;
this.name=_name;
}
有了对象构造器,就可以创建新的对象实例,
如:var Boss = new person(1,"Lily");
var Chief = new Person(2,"Rose");
此外,使用Object对象或对象构造器创建的实例,即便是对象中没有的属性,也可以再添加新的属性
方法是附加在对象上的函数,在构造器中添加函数的方法:
this.changename=changename;
function changename(_name)
{
this.fisrtname = _name;
}
下面用一个例子来说明:
<!DOCTYPE html> <html> <body> <script> var student = new Object(); student.name="Tim"; student.age=18; student.grade=6; document.write(student.name + " is " + student.age + " years old, Grade "+student.grade+".<br>"); 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.firstname=_name; } this.changeage = changeage; function changeage(_age) { this.age=_age; } } p1=new person("Bill","Gates",56,"blue"); document.write(p1.firstname + " is " + p1.age + " years old."+p1.address+"<br>"); p1.address = "Home"; p1.changename("Will"); p1.changeage(28); document.write(p1.firstname + " is " + p1.age + " years old."+p1.address); </script> </body> </html>
输出结果:
Tim is 18 years old, Grade 6. Bill is 56 years old.undefined Will is 28 years old.Home