我一直在使用 jQuery.extend 来替换像这样的默认属性
var Car = function(options){
var defaultOptions = {
color: "hotpink",
seats: {
material: "fur",
color: "black",
count: 4
},
wheels: 4
}
this.options = $.extend(true,{},defaultOptions,options);
}
var myCar = new Car({
color: "blue",
seats: {
count: 2,
material: "leather"
}
});
alert(myCar.options.color); // "blue"
alert(myCar.options.seats.color); // "black"
alert(myCar.options.seats.count); // 2
虽然效果很好,但我想知道在没有任何库的情况下实现类似结果的最佳方法。我只想在函数中定义一些默认设置并用参数中的设置替换它们,每次我这样做时都包含一个库是一种矫枉过正的做法。