高级教程上提到创建对象的方法有字面量法、工厂模式、构造函数模式、原型模式、混合模式等等。在工厂模式里面有个例子,function creatPerson(name){ var obj=new Object(); obj.name=name; return obj;}var person=creatPerson(“hello”);这里在函数内部已经使用了构造函数模式了啊,那干嘛还有工厂模式的出现了?这几种创建对象的方法是一步一步发展而来的吗?函数的prototype属性是为了原型模式才有的,还是自javascript诞生之初就已经存在了,有大牛能够讲一下这个历史吗?
1 回答
达令说
TA贡献1821条经验 获得超6个赞
为了避免太复杂,你这么理解吧:
构造函数模式:
var person = new Person('hello')
工厂模式:
var person = creatPerson('hello')
至于 prototype 的问题,参考我另一个回答吧:javascript是面向对象的,怎么体现javascript的继承关系?
添加回答
举报
0/150
提交
取消