面向对象
面向对象是一种思想,生活中处处都可以应用,万事万物都是对象。
面向对象的特点
封装:将一堆方法和属性放在一起。(不考虑内部实现,只考虑功能使用)
继承:最大限度重用代码
多态:不同类的同名方法
组成
属性:变量
方法:函数
js中常见对象
array:数组,用来存储数据
data:日期
regexp:正则,可以字符串验证
object:可以理解空对象,没有功能
对象的写法
1.使用object var obj = new Object(); new出来的是一个具体的对象
2.json var obj = {};
写法简易,语法简单,重用性低,适用于整个程序只有一个的对象
3.工厂方式
function createPerson(name,qq) {
var obj = new Object();
}
4.构造函数创建对象
建议:方法和公用属性写在原型中 原型需要用构造函数名调用 原型的本质是个对象
prototype
原型:该类的公共存储空间,用于节省内存
原型链:当访问对象的某个属性或方法时,先在自己的构造函数中寻找,如果没有,就在自己的原型中寻找,如果还没有,就找原型的原型,一直找到object的原型,这样形成的一个链条称之为原型链。
类:模型(月饼模子 Array Data),成品
对象:产品,实例(月饼 arr=[1,2,3] data)
原型是往类上添加的 Array.prototype.sum = function(){}