面向对象
用名词封装描述的方式,最主流的编程范式(js不强制使用面向对象)
类/构造函数
描述对象的代码,也是描述一个对象的模版
相对于普通函数,构造函数内部可以使用this,且需要new初始化
function A(){ this.a=1 }
创建
使用new进行创建
var a=new A();
使用new命令后,其函数经过一次`封装`:先创造一个空对象,作为上下文对象,赋值给函数内部的this关键字。也就是说,this指的是一个新生成的空对象,所有针对this的操作,都会发生在这个空对象上。
构造函数之所以叫“构造函数”,就是说这个函数的目的,就是操作上下文对象(即this对象),将其“构造”为需要的样子。如果构造函数的return语句返回的是对象,new命令会返回return语句指定的对象;否则,就会不管return语句,返回构造后的上下文对象。