我有一个构造函数,可用于实例化一个新的Button对象。创建此对象时,您可以使用一个参数满足该功能。如果此参数是关联数组,则数组的所有值都将成为Button对象的属性。
所以我要做的就是这个
function Button(args){
for (arg in args)
{
//Add the name of arg as property of Button with arg as value.
}
};
var button = new Button({
name:"My button",
value:"My super special value",
color:"black",
enabled:false
});
这应该做的是创建一个像这样的按钮对象。
button.name //should be "My button"
button.value //should be "My super special value",
button.color //should be "black",
button.enabled //should be false
我似乎无法弄清楚如何实现这一点,因为如果你得到了关联,它就是一个字符串。并且this.arg = args [arg]显然不起作用。
注意:输入必须是数组,如果用户将其他关联数组放在参数中,则属性将不同。 {test:true}
将动态创建一个带有test属性的按钮,其值为true。
这意味着button.test = true
不是一个选项。它必须是动态的。
答案 0 :(得分:5)
this.arg = args[arg]
显然无法正常工作
this[arg] = args[arg]
答案 1 :(得分:0)
此
function Button(args){ for(arg in args){ 这[arg] = args [arg]; } };
var button = new Button({ 名称:“我的按钮”, 价值:“我的特殊价值”, 颜色:“黑”, 启用:假 });