您的位置:首页 > Web前端 > JavaScript

js(十五)——工厂和构造方法创建对象

2016-07-12 22:43 405 查看
//1.通过工厂方式创建对象 可重用 但是无法区分类型 缺陷
function createObject(name){
var o=new Object();
o.name=name;
return o;
}

//2.构造函数的方式创建对象 可以区分类型
//缺陷 每一个对象都有自己的方法 浪费内存 和java不同之处
//解决办法 可以将函数放在全局变量中定义
//但是这样会破坏封装性 大量全局函数 不利于开发
function Person(name,age){
this.name=name;
this.age=age;
this.say=function(){
alert(name);
};
this.say=say;
}

function say(){
alert("将函数放在外面,节省内存,避免每一个对象都有方法的拷贝");
}
var p=new Person("lq", 21);
p.say();
//可以区分类型
alert(p instanceof Person);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: