【ぶんかつだいにゅう】
分割代入 とは?
最終更新:
💡 箱の中の値に、まとめて名前を付ける
配列などの要素やオブジェクトのプロパティから値を取り出し、変数へ割り当てる構文。JavaScriptでは配列は並び順、オブジェクトはプロパティ名に対応させる。別の変数名、既定値、残りの値をまとめる書き方もあり、深いコピーとは異なる。
📌 このページのポイント
分割代入って、何を分けるの?
JavaScriptなら「const [first, second] = [10, 20];」でfirstに10、secondに20を割り当てられるよ。値の並びに名前を付ける書き方で、元の配列を切り刻む操作ではないんだ。
オブジェクトだとどうなる?
値がないときはどうする?
「const { count = 0 } = data;」ならcountが存在しないかundefinedのとき0を使う。ただしcountがnullならnullのままだよ。また、data自体がnullやundefinedだとオブジェクトの分割代入はエラーになるので、受け取る値を確かめよう。
...restって何?
関数でも使える?
まとめ:ざっくりこれだけ覚えればOK!
「分割代入」って出てきたら「データの形に合わせて値を取り出し、変数へ割り当てる書き方」と思えばだいたいOK!
📖 おまけ:英語の意味
「destructuring assignment」 = 構造から値を取り出す代入
💬 名前は構造を分解するイメージだけれど、元の配列やオブジェクトを壊すという意味ではない。データの形と変数を対応させて読むと分かりやすいよ。