通过工厂方法和构造函数创建对象的方式和区别。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body> <script type="text/javascript"> // 工厂模式创建对象 // 缺点是不能指出实例之间的关系。 function creatPerson (name,age){ var person = new Object(); person.name = name; person.age = age; return person; } var personOne = creatPerson("fjc",18); var a = personOne.name; alert(a) // 用构造函数创建对象,构造函数也是一个函数。 // 不仅是个函数,还是个类型。 function Person (name,age){ this.name = name; this.age = age; } alert(typeof(Person)) // 实例会记录下自己的构造函数。 // 如果不加new关键字,this就指向的window,因为是可以运行的。 var fun = new Person("fujichao",18); alert(fun.name) </script> </html>