对象是一种特殊的数据类型,由属性和方法封装而成。
8.1属性
属性指的是与对象有关的值:对象名.属性名
8.2方法
方法指的是对象可以执行的行为或可以完成的功能:对象名.方法名()
8.3定义对象的三种方式
1)创建对象的实例。2)创建对象的模版。3)使用JSON(相当于Java中的Map)。
8.4创建通用对象
使用Object创建对象以实现简单的封装,但不方便重用!
例如:
function TestObject(){ //创建对象,封装数据和行为
var s=new Object(); s.name=”mary”; s.age=18; s.sing=function(){alert(“hello”);};
//匿名方法,赋进去一个function,所以sing是个方法
alert(s.name); alert(s.age); s.sing(); }
注意事项: .后写啥属性名都行,因为JavaScript是松散类型语言。
8.5创建对象的模版
可重用的封装;定义构造函数,以创建自定义的对象。
语法:function ObjName(参数1,参数2,…){}
例如:
function Student(n1,a1){//定义一个对象的模版:Student
this.name=n1;//用了this关键字,就认为Student是一个类,而不是方法
this.age=a1; this.introduceSelf=function(){
alert(“i am “+this.name+”, i am “+this.age +” year old”); } }
function testOwnObject(){//测试自定义的Student对象
var p1=new Student(“mary”,18); var p2=new Student(“join”,20);
alert(p1.name); alert(p2.age); p1.introduceSelf(); p2.introduceSelf(); }