基本过程
1.创建一个空对象
2.空对象的原型指向其构造函数的原型属性
3.执行构造函数,且构造函数的this指向该对象
4.判断构造函数返回值类型,若为值类型,返回空对象本身,若为引用类型,返回这个引用类型
例如,创建Person的实例
function Person(name,age){ this.name = name; this.age = age; } var obj = {}; obj.__proto__ = Person.prototype; var result = Person.call(obj,name,age); if(typeof(result) == ‘object‘){ person = result; } else{ person = obj; } return person
时间: 2024-10-27 18:55:06