瞌睡中的葡萄虎

博客园 首页 新随笔 联系 订阅 管理

通过工厂的方式来创建Person对象,在createPerson中创建一个对象,然后为这个对象设置相应的属性和方法,之后返回这个对象

function createPerson(name, age){
    var obj = new Object();
    obj.name = name;
    obj.age = age;
            
    obj.say = function(){
        alert(this.name+","+this.age);
    }
    return obj;
}

var p1 = createPerson("Leon",22);
var p2 = createPerson("Ada",33);
p1.say();
p2.say();

alert(typeof p1); //object
alert(p1 instanceof Object); //true

使用工厂的方式,虽然有效的解决了类的问题,但是依然存在另外一个问题:我们无法检测对象p1和p2的数据类型,

通过typeof仅仅只能检测出object类型,如果希望使用instanceof来检测的话,无法确定检测的类型。

 

posted on 2014-09-03 18:02  瞌睡中的葡萄虎  阅读(158)  评论(0编辑  收藏  举报