LoginSignup
1
2

More than 3 years have passed since last update.

Javascriptメモ

Posted at

Javascript メモ

Javascriptのオブジェクトについて自分用にメモします。

オブジェクトの省略表記

オブジェクトは省略して作ることができます。

const a = 1;
const b = 2;
const obj = {a, b}
console.log(obj) //{ a: 1, b: 2 }

オブジェクトから変数の代入

オブジェクトから変数を作ることができます。

const props = { numList: [1,2,3], children: "This is a child" };
const {numList, children} = props;
console.log(numList); // [1,2,3]
console.log(children); // "This is a child"

ただしキーと違う変数名で代入するとundefinedになります。

const {a, b} = props;
console.log(a); // undefined
console.log(b); // undefined

オブジェクトを展開する

オブジェクトの前に...と表記することで中身を展開できます。

const object = { a: 1, b:2 };
console.log({...object}); // {a: 1, b: 2}

{}で囲わないとエラーになります。

console.log(...object); // Uncaught TypeError: Found non-callable @@iterator at <anonymous>

値を更新する

{}の中でオブジェクトを展開してさらにそこにキーバリューペアを追加できます。
同じキーがあると後に追加された値で更新されます。

const object = { a: 1, b:2 };
console.log({...object, a: 5}); // { a: 5, b: 2 }
console.log({ a: 5, ...object }); // { a: 1, b: 2 }

変数名がキーになる

変数に入れたオブジェクトをさらに{}で囲むと変数名がそのままキーになります。

const object = { a: 1, b:2 };
const object2 = {object};
console.log(object2); // {object: { a:1, b:2 }
console.log(object2.object); // {a: 1, b: 2}
console.log(object2.object.a); // 1

変数をオブジェクトのキーにしたい時は[]で囲む

変数をオブジェクトのキーに指定したいときは[]で囲みます。

const num = 2;
const object = {1: "a", [num]: "b"}
console.log(object); // {1: "a", 2: "b"}

以上です。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2