一、面向对象介绍
面向对象是一种思想
面向对象语言中有两个概念:类和对象
类:对实体对象的抽象(学生)
对象:类的具体示例(张三)
面向对象语言(java)
js中没有类的概念,采用的原型,它相当于类
js中原型对象(类)和实例对象(对象)
对象由属性和方法组成,属性是静态特征(变量),方法是动态特征(函数)
面向对象三大特征:封装、继承(共性)、多态(个性)
一切皆对象
二、对象的创建
1、原生对象
//js原生对象(js自己写好的对象,直接使用):
var str = new String();
var date = new Date();
var arr = new Array();
2、自定义对象
- 构造函数的方式(常用)
//原型对象
function student(name,sex,age){
//属性
//this就是指new出来的新对象
this.name = name;
this.sex = sex;
this.age = age;
//方法
this.homework = function(){
}
this.tingke = function(){
}
//return相当于js帮我们做了
}
var zhangsan = new student("张三","男",18);
- 工厂模式
function student(name,sex,age){
var obj = new Object();
obj.name = name;
obj.sex = sex;
obj.age = age;
obj.homework = function(){
console.log("");
}
return obj;
}
- 原型的方式
function student(){
}
student.prototype.name = "xxx";
student.prototype.age = 18;
var zhangsan = new student();