遍歷 javascript 對(duì)象的方法有:for…in 循環(huán):遍歷對(duì)象的自身和繼承的屬性。object.keys():僅遍歷對(duì)象的自身可枚舉屬性的鍵。object.values():僅遍歷對(duì)象的自身可枚舉屬性的值。object.entries():遍歷對(duì)象的自身可枚舉屬性的鍵值對(duì)。
遍歷 JavaScript 對(duì)象
如何遍歷 JavaScript 對(duì)象?
要遍歷 JavaScript 對(duì)象,最常用的方法是使用 for…in 循環(huán)。它遍歷對(duì)象的所有可枚舉屬性,包括那些繼承自原型鏈的屬性。
使用 for…in 循環(huán)
const person = { name: "John Doe", age: 30, city: "New York" }; for (const property in person) { console.log(`${property}: ${person[property]}`); }
登錄后復(fù)制
輸出:
name: John Doe age: 30 city: New York
登錄后復(fù)制登錄后復(fù)制登錄后復(fù)制
注意: for…in 循環(huán)還遍歷繼承的屬性,因此可能會(huì)輸出其他屬性,具體取決于對(duì)象的原型鏈。
使用 Object.keys
要僅遍歷對(duì)象的自身可枚舉屬性,可以使用 Object.keys 方法。它返回一個(gè)包含所有鍵的數(shù)組。
const person = { name: "John Doe", age: 30, city: "New York" }; const keys = Object.keys(person); for (const key of keys) { console.log(`${key}: ${person[key]}`); }
登錄后復(fù)制
輸出:
name: John Doe age: 30 city: New York
登錄后復(fù)制登錄后復(fù)制登錄后復(fù)制
使用 Object.values
要僅遍歷對(duì)象的自身可枚舉屬性值,可以使用 Object.values 方法。它返回一個(gè)包含所有值的數(shù)組。
const person = { name: "John Doe", age: 30, city: "New York" }; const values = Object.values(person); for (const value of values) { console.log(value); }
登錄后復(fù)制
輸出:
John Doe 30 New York
登錄后復(fù)制
使用 Object.entries
要遍歷對(duì)象的自身可枚舉屬性的鍵值對(duì),可以使用 Object.entries 方法。它返回一個(gè)包含鍵值對(duì)數(shù)組的數(shù)組。
const person = { name: "John Doe", age: 30, city: "New York" }; const entries = Object.entries(person); for (const [key, value] of entries) { console.log(`${key}: ${value}`); }
登錄后復(fù)制
輸出:
name: John Doe age: 30 city: New York
登錄后復(fù)制登錄后復(fù)制登錄后復(fù)制
其他方法
還有一些其他方法可以遍歷 JavaScript 對(duì)象,但它們的使用不那么普遍:
forEach 方法
map 方法
filter 方法
some 方法
every 方法