什么是对象?
a.对现实事物的抽象 —面向对象是对现实事物的抽象
b.对数据的封装 —是对具体数据的封装,是一堆属性和方法的集合
对象的三大特征(封装、继承、多态)
1.封装性,是对属性和方法的封装
2.继承是将别人没有的,拿过来成为自己的就是继承,js里不具备特定的继承的机制,但是可以通过技术上实
3.多态,不同情况的不同表现形式。如某个方法,传一个参数和传多个参数,得到的结果不一样
## 创建对象的四种方式 ##
** 1.声明范式**
// var obj = {}
**2.工厂函数1**
// function stu(name,age){
// return {
// name: name,
// age : age,
// sayHello : function(){
// console.log(‘我是‘+this.name+‘今年‘+this.age+‘岁‘)
// }
// }
// }
// var stu1 = stu(‘zhangsan‘,21)
// stu1.sayHello()
//
**3.工厂函数2**
// function stu(name,age){
// var obj = {};
// obj.name = name;
// obj.age = age,
// obj.sayHello = function(){
// console.log(‘我是‘+this.name+‘今年‘+this.age+‘岁‘)
// }
// return obj
// }
// var stu1 = stu(‘lis‘,22);
// stu1.sayHello()
//
//
**4. 工厂函数3——构造函数,重点**
// function Student(name,age){
// this.name = name;
// this.age = age;
// this.sayHello = function(){
// console.log(‘我是‘+this.name+‘今年‘+this.age+‘岁‘)
// }
// }
// var stu1 = new Student(‘wang5‘,1);
// stu1.sayHello()