[ノンプロ研]GAS初級講座10期第6回・スプレッドシートの操作(実践編)

コミュニティ「ノンプログラマーのためのスキルアップ研究会」GAS コース第10期第6回のツイートまとめです。コンテンツは「スプレッドシートの操作(実践編)」です。 https://tonari-it.com/community-nonpro-semi-2/
3
Hassy @googleappsscri

続いてflatメソッドです。配列の次元を減らすことができます!例:2次元→1次元 #ノンプロ研

2021-08-27 20:22:56
Hassy @googleappsscri

flatメソッドは、例えばSSからデータを取得すると2次元配列なので、それを1次元にしてぶつけたい(やっぱり使ってしまう)場合などにも活躍します。 #ノンプロ研

2021-08-27 20:23:40
George.I@GAS、Python勉強中 @InvestorVet_

Arr.flat() これは使いどころが分からない あえて配列をばらす意味はあるのだろうか・・ #ノンプロ研 #GAS初級講座

2021-08-27 20:24:33
Hassy @googleappsscri

3次元配列というのももちろん存在しますが、ほぼ見かけたことはありません。 #ノンプロ研

2021-08-27 20:25:23
Hassy @googleappsscri

flatメソッドの引数にInfinityを入れると、1次元配列になります。InfinityのIは大文字なので注意! #ノンプロ研

2021-08-27 20:27:30
Hassy @googleappsscri

pushメソッドに入ります。こちらから、配列の中身を変えてしまうメソッドをご紹介です。 #ノンプロ研

2021-08-27 20:28:18
Hassy @googleappsscri

pushメソッドは感覚的にもわかりやすいですね。 #ノンプロ研

2021-08-27 20:28:48
Hassy @googleappsscri

shiftメソッドはpushとは対照的に、配列の先頭にある要素を抜き出します。(抜き出した要素が返ります) #ノンプロ研

2021-08-27 20:29:24
kiriharaHiro 電子工作とIoT_ICT活用を勉強中 @KiriharaHiro

const members = [[[[10],[30],[20],[40]]]]; console,log(members.flat(infinity)); flat method(深さ) ・・・深さを指定できる infinity は正の無限大なのでn次元の配列でも一発で一次元配列に変換してくれる。 #ノンプロ研 #GAS初級講座

2021-08-27 20:29:35
Hassy @googleappsscri

なんとなくお気づきかもしれませんが、紹介しているメソッドは基本的にJavaScriptのメソッドと同一です。したがって、「○○ができるメソッドってあるのかな」と考えた場合には、「△△(やりたいこと) メソッド Javascript」等で検索すればHitすることが多いです。 #ノンプロ研

2021-08-27 20:33:23
Hassy @googleappsscri

講師から具体的なflatメソッドの使い道をご説明いただいております。 #ノンプロ研

2021-08-27 20:36:59
Hassy @googleappsscri

別オブジェクトになるのでぶつけられないっぽいですね! #ノンプロ研

2021-08-27 20:38:47
Hassy @googleappsscri

shiftメソッドはヘッダーを処理したくない場合によく使いますね。その場合はunshiftメソッドで戻してあげましょう! #ノンプロ研

2021-08-27 20:40:00
Hassy @googleappsscri

中二病をくすぐるシリーズ「破壊的メソッド」。このシリーズは暗黙の型変換ぶりですね。 #ノンプロ研

2021-08-27 20:40:31
Hassy @googleappsscri

破壊的メソッドは操作するオブジェクトに変更を加えてしまうので、元のオブジェクトを保持したいときには、元のオブジェクトの複製を作ってから操作が必要です。 #ノンプロ研

2021-08-27 20:41:23
Hassy @googleappsscri

講師より配列の複製について丁寧にご説明いただいております。 #ノンプロ研

2021-08-27 20:42:26
kiriharaHiro 電子工作とIoT_ICT活用を勉強中 @KiriharaHiro

破壊的メソッド pushメソッド shiftメソッド は中身が変わってしまうので複製しましょう const members2 = members では複製できない(参照渡しとなる) #ノンプロ研 #GAS初級講座

2021-08-27 20:44:36
Hassy @googleappsscri

...スプレッド構文がオススメです。...で配列の要素をすべて展開してくれます! #ノンプロ研

2021-08-27 20:45:28
Hassy @googleappsscri

いいですね~中級もおもしろそうですね!! #ノンプロ研

2021-08-27 20:45:55