我的目标是有一个像下面这样的对象:
var attrs = {
price : [0, 500000],
housesize : [0, 40],
lotwidth : [0, 30],
storeys : 'both',
bedroom : 0,
bathroom : 0
};
但我不想对此进行硬编码,而是想从另一个对象的元素中自动生成。该对象如下所示:
var Defaults = {
steps : [10,3,3], // steps for the slider to jump
filters : {
rangeFilter : ['price', 'housesize', 'lotwidth'], // list of slider inputs
radioFilter : ['storeys'], // list of radio inputs
increamentFilter: ['bedroom', 'bathroom'],
}
};
所以我正在尝试构建一个对象,其键将是对象的所有值filters
。我想这样做的原因是,如果我给filters
对象添加一些值,我就不需要在attrs
对象中创建一个键。对象中键的数量与attrs
对象中的元素完全相同filters
。
任何帮助,将不胜感激。干杯。
===========================================
** * ** * **编辑* ** * ** * *
这就是我此刻想出的
var attrs = {};
for (var key in Defaults.filters) {
var obj = Defaults.filters[key];
for (var prop in obj) {
attrs[obj[prop]] = 0;
}
}
但目前我正在向新元素的所有键添加 0。我需要想出一种方法来动态添加特定的值。可能是范围过滤器内的另一个对象??