js面向对象
面向对象是一种思想,是基于面向过程而言的,就是说面向对象是将功能等通过对象来实现,将功能封装进对象之中,让对象去实现具体的细节;这种思想是将数据作为第一位,而方法或者说是算法作为其次,这是对数据一种优化,操作起来更加的方便,简化了过程。
面向对象有三大特征:封装性、继承性、多态性,其中封装性指的是隐藏了对象的属性和实现细节,仅对外提供公共的访问方式,这样就隔离了具体的变化,便于使用,提高了复用性和安全性。对于继承性,就是两种事物间存在着一定的所属关系,那么继承的类就可以从被继承的类中获得一些属性和方法;这就提高了代码的复用性。继承是作为多态的前提的。多态是说父类或接口的引用指向了子类对象,这就提高了程序的扩展性,也就是说只要实现或继承了同一个接口或类,那么就可以使用父类中相应的方法,提高程序扩展性。
对象绑定属性和方法的方式:
var person = new Object();
自定义属性---状态:
person.name = "张三";
person.age = 18;
自定义方法---行为:
person.eat = function(){
alert("今天吃米饭");
}
调用:
console.log(person.name);
console.log(person.age);
person.eat();
面向对象创建的几种方式:1、内置对象创建 2、json方式创建/对象字面量(两者的区别在于属性是否添加引号) 3、构造函数创建(this)。