推入我的 javascript 数组
Push in my javascript array
我的 JSlink 代码需要一些帮助。
我用过这段代码,效果很好:
var Fields = {
"Continent": {
"NewForm": FieldTemplate,
"EditForm": FieldTemplate
},
"Country": {
"NewForm": FieldTemplate,
"EditForm": FieldTemplate
},
"City": {
"NewForm": FieldTemplate,
"EditForm": FieldTemplate
}
};
但我想让它动态化,所以我尝试了这个:
for (var i = 0; i < fields.length; i++){
Fields.push(fields[i].name: {
"NewForm": countryFieldTemplate,
"EditForm": continentFieldTemplate
});
}
在for循环中,fields是一个包含"Continent"、"Country"和"City"的数组,但我的代码不起作用,我想知道为什么。
提前致谢。
您可以使用以下语法在 JavaScript 对象上创建属性:
Object[propertyName] = propertyValue;
所以这应该有效:
var Fields = {};
for (var i = 0; i < fields.length; i++){
Fields[fields[i]] = {
"NewForm": countryFieldTemplate,
"EditForm": continentFieldTemplate
};
}
其中 fields
是:
var fields = ["Continent", "Country", "City"]
// Fields needs to be an object rather than an array
var Fields = {};
// loop over your fields array
for (var i = 0; i < fields.length; i++){
// then just assign each field as the key to the Fields object
Fields[fields[i]] = {
NewForm: countryFieldTemplate,
EditForm: continentFieldTemplate
};
}
我的 JSlink 代码需要一些帮助。
我用过这段代码,效果很好:
var Fields = {
"Continent": {
"NewForm": FieldTemplate,
"EditForm": FieldTemplate
},
"Country": {
"NewForm": FieldTemplate,
"EditForm": FieldTemplate
},
"City": {
"NewForm": FieldTemplate,
"EditForm": FieldTemplate
}
};
但我想让它动态化,所以我尝试了这个:
for (var i = 0; i < fields.length; i++){
Fields.push(fields[i].name: {
"NewForm": countryFieldTemplate,
"EditForm": continentFieldTemplate
});
}
在for循环中,fields是一个包含"Continent"、"Country"和"City"的数组,但我的代码不起作用,我想知道为什么。 提前致谢。
您可以使用以下语法在 JavaScript 对象上创建属性:
Object[propertyName] = propertyValue;
所以这应该有效:
var Fields = {};
for (var i = 0; i < fields.length; i++){
Fields[fields[i]] = {
"NewForm": countryFieldTemplate,
"EditForm": continentFieldTemplate
};
}
其中 fields
是:
var fields = ["Continent", "Country", "City"]
// Fields needs to be an object rather than an array
var Fields = {};
// loop over your fields array
for (var i = 0; i < fields.length; i++){
// then just assign each field as the key to the Fields object
Fields[fields[i]] = {
NewForm: countryFieldTemplate,
EditForm: continentFieldTemplate
};
}