嗨!
我是Angular的初学者,还没有为此找到任何东西,所以,如果您可以帮助我,请...
这是一个数组
firstarray[] = [{id:1,name:abc},{id:2,name:cba},{id:3,name:asd}]
我想做的是:
第一:我有一个索引,例如indexNum = 1
;
然后,我想要一个包含firstarray
的索引项的新数组,索引为1,所以它们分别是id:2和name:cba。
indexItems[] = {2,cba}
第二:
我想从firstarray
中创建两个新数组,一个存储仅IDs ,其他存储仅名称。
id_array[] = {1,2,3}
name_array[] = {abc,cba,asd}
答案 0 :(得分:1)
对于第一个任务,您应该仅在创建第二个数组时使用第一个数组的索引。
var indexItems = [firstArray[index]];
我不确定为什么您只需要构建一个仅包含一项的数组,因为如果未将其包装在数组中,则使用该项会更容易一些,例如: / p>
var indexItem = firstArray[index];
对于第二项任务,使用map
函数可以将一个数组映射到转换后的数组。还要注意,您可能需要在数组中引用字符串。 (我假设它们不是变量名。)
// [{id:1,name:'abc'},{id:2,name:'cba'},{id:3,name:'asd'}]
var nameArray = firstArray.map(item => item.name);
// ['abc', 'cba', 'asd']
var idArray = firstArray.map(item => item.id);
// [ 1, 2, 3 ]
答案 1 :(得分:0)
第一
indexItems= Object.values(firstarray[1])
第二
valsArr1=[]
valsArr2=[]
firstarray.forEach(item=>{
valsArr1.push(item['id']);
valsArr2.push(item['name']);
})