オブジェクトに対してスプレッド演算子や分割代入を使う方法について見ていきます。
- スプレッド構文
- 分割代入
- レスト構文
スプレッド構文
・スプレット構文はオブジェクトを展開することもできます。
・つまりオブジェクトの中身をそのまま別のオブジェクトに入れるという感じです。
・例えばxとyにそれぞれ100、200が入っているpointというオブジェクトにzとaに300、400が入っているotherPointという配列を入れたい場合について考えていきます。
・この場合pointのyのあとに…otherPoint,と入れてあげましょう。
・pointというオブジェクトの中にx, y, z, aのそれぞれ100, 200, 300, 400, が入ったオブジェクトができます。
分割代入
・また分割してそれぞれ定数として扱うようにすることができます。
・さっきのx, y, z, aのそれぞれ100, 200, 300, 400,が入っているオブジェクトをそれぞれxという定数の中に100が入った定数の形にしていきます。
・また、少し複雑ですがxとaはそれぞれ100,と400が入った状態にしますがプロパティはオブジェクトとして残していきます。
・const {}として定数を代入してあげることによってオブジェクトのキーと同じ定数名でキーの値が代入されます。
・これを分割代入といいます
レスト構文
・次にy, とz, はオブジェクトとして残したいのでレスト構文を使っていきます。…othersとすればいいので今回はconst {x, a, ...others} = point;というように書いてあげましょう。
・するとxとaはそれぞれ100,と400が入った状態で定数になりプロパティはオブジェクトもまま残ってくれます。