Javascript 将数组转换为类似数组的对象
我有一个数组,比如说Javascript 将数组转换为类似数组的对象,javascript,arrays,javascript-objects,Javascript,Arrays,Javascript Objects,我有一个数组,比如说[{id:'first'},{id:'second'}] 是否有我缺少的将数组转换为类似数组的对象的本机方法?我已经看到很多关于另一个方向的答案,并推荐Array.prototype.slice.call(或更新的Array.from),但我找不到有人问这个问题。对于上面的示例,我希望获得以下输出: { 0: { id: 'first' } 1: { id: 'second' } } 不是本机方法,但以下帮助器函数应起作用: var arr = [{ id: 'fi
[{id:'first'},{id:'second'}]
是否有我缺少的将数组转换为类似数组的对象的本机方法?我已经看到很多关于另一个方向的答案,并推荐Array.prototype.slice.call
(或更新的Array.from
),但我找不到有人问这个问题。对于上面的示例,我希望获得以下输出:
{
0: { id: 'first' }
1: { id: 'second' }
}
不是本机方法,但以下帮助器函数应起作用:
var arr = [{ id: 'first' }, { id: 'second' }];
function toArrayLike(arrayToConvert) {
var retVal = {};
Object.keys(arrayToConvert).forEach(function(key) {
retVal[key] = arrayToConvert[key];
});
return retVal
}
var arrayLike = toArrayLike(arr);
console.log(arrayLike);
不是本机方法,但以下帮助器函数应起作用:
var arr = [{ id: 'first' }, { id: 'second' }];
function toArrayLike(arrayToConvert) {
var retVal = {};
Object.keys(arrayToConvert).forEach(function(key) {
retVal[key] = arrayToConvert[key];
});
return retVal
}
var arrayLike = toArrayLike(arr);
console.log(arrayLike);
减少它
var数组=[{id:'first'},{id:'second'}];
var obj=array.reduce((a,b,i)=>{返回a[i]=b,a},{})
console.log(obj)
减少它
var数组=[{id:'first'},{id:'second'}];
var obj=array.reduce((a,b,i)=>{返回a[i]=b,a},{})
log(obj)
您只需迭代数组
并将值添加到相应的索引中即可
var arr=[{id:'first'},{id:'second'}];
变量集={};
arr.forEach(函数(值、索引){
设置[索引]=值;
})
log(set)
您只需遍历数组
并将值添加到相应的索引中即可
var arr=[{id:'first'},{id:'second'}];
变量集={};
arr.forEach(函数(值、索引){
设置[索引]=值;
})
console.log(set)
使用array.reduce并自己编码?新的set(array)
@user2415266也许你可以帮助他,因为他似乎是新手programming@Wade也许他可以在要求复印件之前先搜索一下question@user2415266在对新的贡献者和编程人员如此粗鲁之前,也许你应该先读一读这篇文章,然后使用array.reduce自己编写代码?newset(array)
@user2415266也许你可以帮助他,因为他似乎是新手programming@Wade也许他可以在要求复印件之前先搜索一下question@user2415266也许你应该在对新撰稿人和编程人员如此粗鲁之前先读一读这本书!您应该使用数组检查@adeneo的答案。reduce
,它做同样的事情,但使用javascript的内置方法nice解决方案!您应该使用数组检查@adeneo的答案。reduce
,它做同样的事情,但使用javascript的内置方法