オブジェクト操作

JS

Object.keys(obj)

オブジェクトの キー(プロパティ名) を配列で返す

const obj = { a: 1, b: 2, c: 3 };
console.log(Object.keys(obj)); 
// ["a", "b", "c"]

Object.values(obj)

オブジェクトの を配列で返す

console.log(Object.values(obj)); 
// [1, 2, 3]

Object.entries(obj)

キーと値のペア[key, value] の配列で返す

console.log(Object.entries(obj));
// [["a", 1], ["b", 2], ["c", 3]]
for (const [key, value] of Object.entries(obj)) {
  console.log(key, value);
}
// a 1
// b 2
// c 3

Object.assign(target, source)

オブジェクトをコピー・マージする

const obj1 = { a: 1 };
const obj2 = { b: 2 };
const merged = Object.assign({}, obj1, obj2);

console.log(merged);

Object.fromEntries(array)

Object.entries() の逆で、[key, value] の配列からオブジェクトを作る

const arr = [["a", 1], ["b", 2]];
const obj = Object.fromEntries(arr);

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

Object.hasOwn(obj, prop)(ES2022以降)

オブジェクトが指定のプロパティを持っているか確認する

const obj = { a: 1 };
console.log(Object.hasOwn(obj, "a")); // true
console.log(Object.hasOwn(obj, "b")); // false

(昔は obj.hasOwnProperty("a") をよく使っていましたが、Object.hasOwn() の方が推奨されています)