スプレッドシートから自動でhtml要素を出力するプログラムを組んでいるのですが、上から順に出力することはでき、下から順に出力したい場面が出てきたのでreverse()関数で配列を逆順にすればできるかな?と思いやってみたところ予期しないものが出力されてしまったためこの方法ではできないのでしょうか。
javascript
1function myFunction() { 2 var spreadsheet = SpreadsheetApp.openByUrl("https://***"); 3 var sheet = spreadsheet.getSheetByName("***"); 4 var values = sheet.getDataRange().getValues(); 5 values = values.reverse(); 6 7 var day = values[0][0]; 8 var field = values[0][1]; 9 var num = values[0][2]; 10 11 var str = []; 12 13 for (var i = 1; i < values.length - 1; i++) { 14 var obj = {}; 15 16 obj[day] = values[i][0]; 17 obj[field] = values[i][1]; 18 obj[num] = values[i][2]; 19 if(obj[day] !== ''){ 20 str += '<li>\ 21 <div>日付'+obj[day]+' '+obj[field]+' 番号'+obj[num]+'</div>\ 22 </li>'; 23 } 24 } 25return str; 26}
上記がソースコードですが日付(Fri Oct 01 2021 00:00:00 GMT+0900 (日本標準時))が消えてしまい原因がわかりませんでした
↓reverse()前の結果
<li> <div>日付Fri Oct 01 2021 00:00:00 GMT+0900 (日本標準時) 三国 番号11</div> </li> <li> <div>日付Sat Oct 09 2021 00:00:00 GMT+0900 (日本標準時) 津 番号5</div> </li>↓reverse()後の結果
<li> <div>日付津 津 番号5</div> </li> <li> <div>日付三国 三国 番号11</div> </li>この逆順にすると日付が消えてしまう原因がわかる方がおりましたらご教授いただきたいです。
回答1件
あなたの回答
tips
プレビュー