例えば、以下のオブジェクトがあるとします。
const obj = { x: 1, y: 2 };
この場合、obj
のプロパティx
をa
という名前の変数に割り当て、y
をb
という名前の変数に割り当てたいとします。
const { x: a, y: b } = obj;
これにより、obj.x
の値が変数a
に、obj.y
の値が変数b
に代入されます。
名前の変更を伴う分割代入は、オブジェクトのプロパティの一部だけを使用する場合や、プロパティ名が長い場合に特に便利です。また、複数のオブジェクトを分割代入する際にも利用できます。
以下に、名前の変更を伴う分割代入のさまざまな例を示します。
const { x: a, y: b } = { x: 1, y: 2 };
console.log(a); // 出力: 1
console.log(b); // 出力: 2
const { prop1: p1, prop2: p2, prop3: p3 } = { prop1: 'a', prop2: 'b', prop3: 'c' };
console.log(p1); // 出力: 'a'
console.log(p2); // 出力: 'b'
console.log(p3); // 出力: 'c'
const { name: n, age: a, city: c } = { name: 'John', age: 25, city: 'Tokyo' };
console.log(n); // 出力: 'John'
console.log(a); // 出力: 25
console.log(c); // 出力: 'Tokyo'
名前の変更を伴う分割代入は、可読性の向上や変数名の衝突を回避するために非常に便利です。必要なプロパティだけを抽出し、わかりやすい変数名を使用することで、コードの保守性を高めることができます。