我是Javascript框架世界的新手,我非常喜欢Backbonejs的工作方式.但我有一个关于模型和视图的构造函数的问题.我已经开发了多年使用类似Java的语言,我习惯于定义这样的构造函数:
public Car(Manufacturer manufacturer, String model, Color color) {
this.manufacturer = manufacturer;
this.model = model;
this.color = color;
}
Run Code Online (Sandbox Code Playgroud)
但是我在文档和其他教程中看到人们在定义模型或视图时通常不会声明特定的构造函数,他们只是构造这样的对象:
var car = new Car({manufacturer: ford, model: "Mustang", color: "red"});
Run Code Online (Sandbox Code Playgroud)
定义构造函数是错误的还是"丑陋的":
window.Car = Backbone.Model.extend({
initialize: function(manufacturer, model, color) {
this.manufacturer = manufacturer;
this.model = model;
this.color = color;
}
});
Run Code Online (Sandbox Code Playgroud)
如果是这样,你能解释一下原因吗?我真的希望这不是一个愚蠢的问题,我没有找到任何相关的问题.