我是Java应用程序开发的新手,我正尝试从Google电子表格中导出JSON。
我正在看一个教程,并遇到了这个代码
function doGet(){
var result ={};
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1')
.getDataRange()
.getValue();
var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet2')
.getDataRange()
.getValue();
result.sheet1 = makeObject(sheet1);
result.sheet2 = makeObject(sheet2);
Logger.log(result.sheet1);
return ContentService.createTextOutput(JSON.stringify(result))
.setMimeType(ContentService.MimeType.JSON);
}
function makeObject(multiArr){
var obj = {};
var headers = multiArr.shift();
for(var i= 0; 1<headers.length; i++){
obj[headers[i]]= multiArr.map(function(app){
return app[i];
});
}
return obj;
}
在教程中,它工作正常,但对我来说却出错 TypeError:在对象SN中找不到函数移位。 (第23行,文件“代码”)
我无法调试它。 请帮助
答案 0 :(得分:0)
var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet2')
.getDataRange()
.getValue();
我正在使用.getValue()
,它只给出一个值,使用.getValues()
获得整个数组。
现在arrray multiArr将具有可以移动的对象。这解决了我的问题。