Javascript 如何转换密钥数组–;值数组到具有.reduce函数的对象数组?
你好,我不是javascript程序员。我想实现的是,随着时间的推移,产量会下降。这个脚本将在google脚本中使用,因此您必须使用Javascript 如何转换密钥数组–;值数组到具有.reduce函数的对象数组?,javascript,google-apps-script,reduce,Javascript,Google Apps Script,Reduce,你好,我不是javascript程序员。我想实现的是,随着时间的推移,产量会下降。这个脚本将在google脚本中使用,因此您必须使用reduce功能 输入 [ [ 'foo', 3.672698 ], [ 'bar', 71.999747 ], [ 'baz', 107.400002 ], ] 输出 [ { name: 'foo', money: 3.672698 }, { name: 'bar', money: 71.9997
reduce
功能
输入
[
[ 'foo', 3.672698 ],
[ 'bar', 71.999747 ],
[ 'baz', 107.400002 ],
]
输出
[
{
name: 'foo',
money: 3.672698
},
{
name: 'bar',
money: 71.999747
},
{
name: 'baz',
money: 107.400002
},
]
就像这样:
const输入=[
[foo',3.672698],
[bar',71.999747],
[baz',107.400002],
];
常量输出=输入。减少((acc,项目)=>{
加速推({
名称:项目[0],
货币:项目[1]
});
返回acc;
}, [])
控制台日志(输出)代码>我知道你特别要求。减少。但是reduce用于将集合减少为单个值。您请求的功能是.map的服务。谷歌脚本也会理解它。看看这个例子:
var-arr=[
[foo',3.672698],
[bar',71.999747],
[baz',107.400002],
]
var res=arr.map(函数(项){
返回{name:item[0],money:item[1]};
});
控制台日志(res)代码>我看到,您的输入是数组的数组,但什么是foo、bar和baz?只是变量?字符串类型?与通常使用数组#reduce
的方式相同。[]
的初始值,并确保在回调中返回累加器。