如何使用angularjs在javascript中存储数组
我是新使用js的,我有一个函数可以将数组中的对象存储到角度模型中, 例如:如何使用angularjs在javascript中存储数组,javascript,angularjs,model,Javascript,Angularjs,Model,我是新使用js的,我有一个函数可以将数组中的对象存储到角度模型中, 例如: function getSpec(){ debugger var i; for(i=0;i<main.specifications.length;i++){ main.newProduct.Specification= ("{\""+main.specifications[i].key+"\":\""+main.specifications[i].value+"\"}");
function getSpec(){
debugger
var i;
for(i=0;i<main.specifications.length;i++){
main.newProduct.Specification= ("{\""+main.specifications[i].key+"\":\""+main.specifications[i].value+"\"}");
}
}
函数getSpec(){
调试器
var i;
对于(i=0;i如果
main.newProduct.Specification
是对象,则可以使用main.newProduct.Specification[main.specifications[i].key]=main.specifications[i].value;
function getSpec(){
debugger
var i;
for(i=0;i<main.specifications.length;i++){
var temp = {};
temp[main.specifications[i].key]=main.specifications[i].value;
main.newProduct.Specification.push(temp);
}
}
函数getSpec(){
调试器
var i;
对于(i=0;i更改getSpec()
,如下所示:
function getSpec(){
debugger
var i;
main.newProduct.Specification = main.newProduct.Specification || {}; // This is optional, and is just a fallback
for(i = 0; i < main.specifications.length; i++) {
main.newProduct.Specification[main.specifications[i].key] = main.specifications[i].value;
}
}
使用ES6循环尝试此解决方案:
让mainObj={
“规格”:[
{“键”:“Ram”,“值”:“1GB”},
{“键”:“颜色”,“值”:“黑色”}
]
};
mainObj.newProduct={
“规格”:{}
}
用于(主对象规范的第一部分){
mainObj.newProduct.specifications[i.key]=i.value;
}
console.log(mainObj.newProduct.specification)
嗨,谢谢你的反馈,我认为这是误解,我的意思是我可以显示key的值和value的值..但是如果我把它放在for里面,它只能一对一显示,但我想以数组长度显示所有值,如果我的长度=4,那么我想在一个显示中显示所有值,可以吗?我修改了答案。我可以知道怎么显示吗你在UI中显示什么?
function getSpec() {
main.newProduct.Specification = main.specifications.reduce(function(obj, item) {
obj[item.key] = item.value;
return obj;
}, {});
}