我正在从表单填写Google电子表格。代码将一些信息写入电子表格,它总是正确的,但在写出它应该的内容之前,它会在电子表格的最后一行写[Ljava.lang.Object;@1c7aa4fc
(或类似的东西)。为什么会出现在那里?
写入电子表格的代码:
for (var p = 1; p < data.length; p++) {
var ppopis = data[p][2];
var sstav = data[p][7];
var ukonceno_dne = data[p][9];
var cell = spred2.getRange("H"+(p+1));
var celll = spred2.getRange("J"+(p+1));
if(nadpis_pole == ppopis && vlozena_hodnota == "Zrušeno") {
cell.clear();
cell.setValue("Zrušeno");
if(ukonceno_dne == "" || ukonceno_dne == null){
celll.setValue(dnesni_datum);
}
} else if (nadpis_pole == ppopis && vlozena_hodnota == "Vráceno") {
cell.clear();
cell.setValue("Vráceno");
if(ukonceno_dne == "" || ukonceno_dne == null){
celll.setValue(dnesni_datum);
}
}
}
谢谢:)
答案 0 :(得分:4)
App脚本具有在java上构建的底层数据结构... Ljava.lang .....表示Java中的对象表示法,用于表示GAS中的任何对象,如Array,JSON。要获得实际值,请尝试 toString ()(或) JSON.Stringify()并检查您是否有值。
答案 1 :(得分:0)
在进行数值设置时要小心。您可能错误地传递了一个数组(或对象类型),而您确实想插入一个字符串。
例如:
...
aSheet.appendRow([["hello world"]]);
将“ Java.Lang.Object”附加到附加行的第一个单元格中。
正确的API将是:
...
aSheet.appendRow(["hello world"]); // single array