给定一个具有偶数个元素的数组,我怎样才能将它变成一个对象数组,其属性'id'等于odd元素,'score'等于even元素。根据元素的奇数/偶数位置变换阵列
例如:
originalArray = [0,1,2,3,4,5]
targetArray = [{ id: 0, score: 1 }, { id: 2, score: 3 }, { id:4, score: 5 }]
给定一个具有偶数个元素的数组,我怎样才能将它变成一个对象数组,其属性'id'等于odd元素,'score'等于even元素。根据元素的奇数/偶数位置变换阵列
例如:
originalArray = [0,1,2,3,4,5]
targetArray = [{ id: 0, score: 1 }, { id: 2, score: 3 }, { id:4, score: 5 }]
我不认为有什么比一个简单的循环更好:
targetArray = for i in [0 ... originalArray.length ] by 2
{ id: originalArray[i], score: originalArray[i + 1] }
您可以编写以不同的方式或在功能,包装它,但它”最后可能会是第二步。
回答有一点需要注意接受:循环应该结束originalArray.length - 1个 – 2013-03-15 19:49:03
@RunningTurtle:查找的差异在CoffeeScript中的'..'和'...'之间,循环的写法是正确的。 – 2013-03-15 19:58:27
我的错误,你绝对正确 – 2013-03-15 20:01:44
'originalArray'没有奇数元素... – 2013-03-15 16:31:59