JavaScript 連想配列 キー 取得
JavaScriptにおける連想配列のキーの取得
連想配列(オブジェクト)のキーを取得する
JavaScriptでは、連想配列はオブジェクトとして扱われます。オブジェクトのキーを取得するには、以下の方法を使用します。
Object.keys()メソッド
- オブジェクトを引数として受け取り、そのキーの配列を返します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
const keys = Object.keys(person);
console.log(keys); // Output: ["name", "age", "city"]
for...inループ
- オブジェクトのプロパティを反復処理し、キーを取得します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
for (const key in person) {
console.log(key); // Output: name, age, city
}
Object.entries()メソッド(キーと値のペアを取得):
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
const entries = Object.entries(person);
console.log(entries); // Output: [["name", "Alice"], ["age", "30"], ["city", "Tokyo"]]
注意
for...in
ループは、オブジェクトのプロトタイプチェーン上のプロパティも列挙する可能性があります。特定のオブジェクトのプロパティのみが必要な場合は、hasOwnProperty()
メソッドを使用してチェックしてください。Object.keys()
、Object.entries()
はオブジェクトの列挙可能なプロパティのみを返します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
const keys = Object.keys(person);
console.log(keys); // Output: ["name", "age", "city"]
console.log()
でkeys
配列を出力すると、オブジェクトのキーがリストされます。person
オブジェクトのキーを取得し、keys
配列に格納します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
for (const key in person) {
console.log(key); // Output: name, age, city
}
key
変数に現在のプロパティのキーが格納されます。person
オブジェクトのプロパティを反復処理します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
const entries = Object.entries(person);
console.log(entries); // Output: [["name", "Alice"], ["age", "30"], ["city", "Tokyo"]]
console.log()
でentries
配列を出力すると、キーと値のペアがリストされます。
- オブジェクトの列挙可能なプロパティと非列挙可能なプロパティの両方を取得します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo",
// 非列挙可能なプロパティ
[Symbol.for("hidden")]: "secret"
};
const keys = Object.getOwnPropertyNames(person);
console.log(keys); // Output: ["name", "age", "city", Symbol(hidden)]
Reflect.ownKeys()メソッド
const person = {
name: "Alice",
age: 30,
city: "Tokyo",
// 非列挙可能なプロパティ
[Symbol.for("hidden")]: "secret"
};
const keys = Reflect.ownKeys(person);
console.log(keys); // Output: ["name", "age", "city", Symbol(hidden)]
for...inループとhasOwnProperty()メソッド
for...in
ループを使用してプロパティを反復処理し、hasOwnProperty()
メソッドを使用してオブジェクト自身のプロパティかどうかをチェックします。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
for (const key in person) {
if (person.hasOwnProperty(key)) {
console.log(key); // Output: name, age, city
}
}
Object.values()メソッド(値の取得):
- オブジェクトの値の配列を取得し、キーを推測します。
const person = {
name: "Alice",
age: 30,
city: "Tokyo"
};
const values = Object.values(person);
console.log(values); // Output: ["Alice", 30, "Tokyo"]
// キーを推測
const keys = Object.keys(person);
console.log(keys); // Output: ["name", "age", "city"]
javascript arrays