var types = ['default', 'primary', 'warn']
var pageObject = {
data: {
defaultSize: 'default',
primarySize: 'default',
warnSize: 'default'
}
}
for (var i = 0; i < types.length; ++i) {
(function(type) {
pageObject[type] = function(e) {
var key = type + 'Size'
var changedData = {}
changedData[key] =
this.data[key] === 'default' ? 'mini' : 'default'
this.setData(changedData)
}
})(types[i])
}
Page(pageObject)
其中for循环的 pageObject[type]这一段类似于window[‘a’]是获取window对象下面a的属性。例如下面这段代码
var obj = {
a:1,
b:2,
c:3
};
var arr = [“a”,”b”];
function test(type){
console.log(obj[type]) //获取obj的属性,类似于obj.a
};
test(arr[0]);
test(arr[1]);