对Javascript中对象的深入理解
封装——与存储相关的信息,无论是数据、方法还是对象
聚合—将一个对象存储到另一个对象的内部。
继承类的能力依赖于另一个类(或类),用于其部分的属性和方法。
多态性-编写函数或方法以多种方式工作
对象是属性。如果一个属性包含一个函数,它被认为是对象的一种方法,否则该属性被认为是一个属性。
对象的属性:
对象的属性可以是任何三种基本数据类型,或者任何抽象数据类型,如其他对象。对象属性通常是内部使用的对象的方法变量,但它们也可以是全局可见的变量。
用于添加属性的目的语法是:
objectname.objectproperty =财产的价值;
实例:
下面是一个简单的示例,说明如何使用标题文件对象的属性获取文档的标题:
var str = document.title;
对象方法:
方法是让一个对象做某事,函数和方法之间的区别是,函数语句的一个单独的单元和方法被附加到对象上,这个关键字引用的差别很小。
该方法可用于从显示对象的屏幕上的所有内容在一组本地属性和参数上执行复杂的数学运算。
实例uff1a
下面是一个简单的例子,说明如何使用文档()文档对象的方法编写文档中的任何内容:
document.write(这是测试);
用户定义对象:
所有用户定义的对象和内置对象都被称为对象对象的后代。
新算子:
new运算符用于创建对象的实例。要创建对象,新的运算符位于构造方法后面。
在下面的示例中,构造方法对象()、数组()和日期()。
新对象();
VaR的书=新的数组(C++
var日=新日期(1947年8月15日);
对象()构造函数:
构造函数是用来创建和初始化一个object.javascript提供了一个对象,用一种特殊的构造函数调用了函数对象()。对象的返回值()建设是赋值给一个变量。
变量包含对一个新对象的引用。分配给对象的属性是不变量,而不是使用var关键字定义的。
例1:
这个例子展示了如何创建一个对象:
用户定义的对象
var =新的(对象);
book.subject =Perl属性的对象; / /分配
book.author =莫塔希姆;
document.write(书的名字是:+ book.subject + );
document.write(本书作者是:+ book.author + );
例2:
这个例子展示了如何创建一个对象,一个用户定义的函数,这里的关键字用来引用传递给函数的对象:
用户定义的对象
函数书(标题,作者){
this.title =标题;
this.author =作者;
}
无功自动=新书(Perl
document.write(书的标题是:+ mybook.title + );
document.write(本书作者是:+ mybook.author + );
定义方法的对象:
前面的示例说明构造函数是如何创建对象和赋值属性的,但是,我们需要指定一个方法来完成对象的定义。
实例uff1a
下面是一个如何向对象添加函数的简单示例:
用户定义的对象
定义一个将作为方法工作的函数
功能addprice(量){
this.price =量;
}
函数书(标题,作者){
this.title =标题;
this.author =作者;
this.addprice = addprice; / /分配方法的性能。
}
无功自动=新书(Perl
(100)mybook.addprice;
document.write(书的标题是:+ mybook.title + );
document.write(本书作者是:+ mybook.author + );
document.write(书的价格是:+ mybook.price + );
关键词:
带关键字用作引用对象的属性或方法的简写。
指定为参数的对象是下一个块持续时间的默认对象。对象的属性和方法可以在未命名对象中。
语法
用(对象){
未使用对象名称和圆点的属性。
}
实例uff1a
用户定义的对象
定义一个将作为方法工作的函数
功能addprice(量){
用(这个){
价格=数量;
}
}
函数书(标题,作者){
this.title =标题;
this.author =作者;
this.price = 0;
this.addprice = addprice; / /分配方法的性能。
}
无功自动=新书(Perl
(100)mybook.addprice;
document.write(书的标题是:+ mybook.title + );
document.write(本书作者是:+ mybook.author + );
document.write(书的价格是:+ mybook.price + );