Javascript 无法添加数组索引
我想在使用for循环时为数组中的索引分配名称。我怎样才能做到这一点。请引导我Javascript 无法添加数组索引,javascript,arrays,Javascript,Arrays,我想在使用for循环时为数组中的索引分配名称。我怎样才能做到这一点。请引导我 // using in a http response for (let i = 0; i <= 6; i++) { this.sf.push({f(i) : // do something) }; 是否要将数组[1,5,9,…]转换为对象{f0:1,f1:5,f2:9,…} 如果是,您可以使用Array.reduce()进行转换: const test = [
// using in a http response
for (let i = 0; i <= 6; i++) {
this.sf.push({f(i) : // do something)
};
是否要将数组[1,5,9,…]
转换为对象{f0:1,f1:5,f2:9,…}
如果是,您可以使用Array.reduce()
进行转换:
const test = [1,5,9,10,15,25];
const result = test.reduce((accum, elem, index) => {
accum[`f${index}`] = elem;
return accum;
}, {});
更新:
事实证明,您可以使用相同的方法将其保留为数组
:
const arrayResult = test.reduce((accum, elem, index) => {
accum[`f${index}`] = elem;
return accum;
}, []);
arrayResult; // [f0: 1, f0: 5, ...]
您需要将数组转换为对象。下面是一个示例代码:
let test=[1,5,9,10,15,25];
设obj={};
对于(设i=0;i您可以使用map函数进行此操作。例如:
test=[1,5,9,10,15,25];
新_arr=[];
test.map(函数(元素,索引){new_arr.push('f'+index+':'+element);})
log(new_arr);
我的方法与其他答案略有不同。
我更喜欢使用,因为这是更清楚和明确的
const sf={}
常数arr=[1,2,3,4,5,6]
for(让Object.entries(arr))的[key,value]{
sf[`f${key}`]=值
}
console.log(sf);
尝试以下操作:
for( const [key, value] of Object.entries(test)){
let obj= {};
obj['f' +key] = value;
this.sf.push(obj);
}
我们使用maptest.map((el,i)=>({[
f${i}]:el}))
数组可以有值键,请尝试将其设为对象。
for( const [key, value] of Object.entries(test)){
let obj= {};
obj['f' +key] = value;
this.sf.push(obj);
}