如何从Google表格中的列值分配对象?

问题描述 投票:2回答:2

我有一个Google表格,其中某些数据列在一个栏中。如何将这些值分配给新对象,例如{'value[0]':value[0], 'value[1]':value[1],..., 'value[i]':value[i]}?我写了这个脚本,但是它只从names的最后一个值开始分配对。

function getIngredientsList() {
  const url = "SPREADSHEET_URL";
  const ss = SpreadsheetApp.openByUrl(url);
  const ws = ss.getSheetByName('Base');
  const names = ws.getRange(2, 3, ws.getLastRow() - 1).getValues().map(a => a[0]);
  let nameList;
  for (let i = 0; i < names.length; i++){
    if (names[i] !== ""){
      let name = {[names[i]]:names[i]};
      nameList = Object.assign(name);
    }    
  } 
  return nameList;
}

我错了以及如何解决?

我有一个Google表格,其中某些数据列在一个栏中。如何将这些值分配给新对象,例如{'value [0]':value [0],'value [1]':value [1],...,'value [i]':value [i]} ?我写了这个脚本,但是...

javascript google-apps-script google-sheets v8 arrow-functions
2个回答
2
投票

我相信您的目标如下。


0
投票

更干净的方法是使用reduce方法:

© www.soinside.com 2019 - 2024. All rights reserved.