最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - What does "[Ljava.lang.Object;@" mean? - Stack Overflow

programmeradmin11浏览0评论

I am filling a Google spreadsheet from a form. The code writes some information into the spreadsheet, it always does it right, but before writing what it is supposed to, it writes [Ljava.lang.Object;@1c7aa4fc (or something like that) on the last row in the spreadsheet. Why is it appearing there?

The code for writing into the spreadsheet:

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);
      }
    }
  }

Thanks :)

I am filling a Google spreadsheet from a form. The code writes some information into the spreadsheet, it always does it right, but before writing what it is supposed to, it writes [Ljava.lang.Object;@1c7aa4fc (or something like that) on the last row in the spreadsheet. Why is it appearing there?

The code for writing into the spreadsheet:

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);
      }
    }
  }

Thanks :)

Share Improve this question edited Jul 23, 2015 at 8:49 Louskac asked Jul 23, 2015 at 8:39 LouskacLouskac 1431 gold badge1 silver badge11 bronze badges 4
  • [Ljava.lang.Object;@.... is the start of a Java class; does dnesdi_datum obtain its contents from a Java program? – S.L. Barth is on codidact.com Commented Jul 23, 2015 at 8:54
  • dnesni_datum means today´s date, which is generated earlier in the code – Louskac Commented Jul 23, 2015 at 9:02
  • log all contents before the setValue so we see them – Zig Mandel Commented Jul 23, 2015 at 13:56
  • You should be able to write a JavaScript Date directly to the sheet - show how dnesni_datum is created. – tehhowch Commented Aug 14, 2018 at 13:44
Add a comment  | 

2 Answers 2

Reset to default 8

App script has underlying data structure built up on java...Ljava.lang..... represents object notation in Java to indicate any object such as Array,JSON in GAS.To get actual value try toString() (or) JSON.Stringify() and check whether you have a value.

Be careful of when you do value setting. You could be passing an array ( or an object type ) by mistake, and you really want to insert a string.

For Example:

        ...
        aSheet.appendRow([["hello world"]]);

Will append "Java.Lang.Object" into the first cell of the appended row.

The correct API will be:

        ...
        aSheet.appendRow(["hello world"]); // single array
发布评论

评论列表(0)

  1. 暂无评论