← Назад к вопросам
Как получить значения объекта в JavaScript?
2.0 Middle🔥 141 комментариев
#JavaScript Core
Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI3 апр. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Основные методы получения значений объекта
В JavaScript существует несколько способов получить значения из объекта:
1. Object.values()
Это самый прямой и удобный способ. Метод возвращает массив значений объекта:
const user = { name: "Иван", age: 25, city: "Москва" };
const values = Object.values(user);
console.log(values); // ["Иван", 25, "Москва"]
2. Object.entries()
Если нужны пары ключ-значение, используй Object.entries():
const user = { name: "Иван", age: 25 };
const entries = Object.entries(user);
console.log(entries);
// [["name", "Иван"], ["age", 25]]
// Можешь деструктурировать в цикле
for (const [key, value] of entries) {
console.log(`${key}: ${value}`);
}
3. for...in цикл
Для итерации по свойствам объекта:
const user = { name: "Иван", age: 25 };
for (const key in user) {
console.log(user[key]);
}
Внимание: этот цикл перебирает и унаследованные свойства, поэтому используй проверку hasOwnProperty():
for (const key in user) {
if (user.hasOwnProperty(key)) {
console.log(user[key]);
}
}
4. Object.getOwnPropertyNames()
Возвращает массив имён всех свойств объекта (включая non-enumerable):
const user = { name: "Иван", age: 25 };
const propertyNames = Object.getOwnPropertyNames(user);
console.log(propertyNames); // ["name", "age"]
Сравнение методов
- Object.values() — самый удобный для получения всех значений
- Object.entries() — когда нужны ключи и значения
- for...in — для старого кода, требует hasOwnProperty()
- Object.getOwnPropertyNames() — включает non-enumerable свойства
Практический пример
const config = {
apiUrl: "https://api.example.com",
timeout: 5000,
retries: 3
};
// Получить все значения и найти число
const values = Object.values(config);
const numbers = values.filter(v => typeof v === "number");
console.log(numbers); // [5000, 3]
// Или использовать Object.entries() для преобразования
const params = Object.entries(config)
.map(([key, value]) => `${key}=${value}`)
.join("&");
console.log(params); // "apiUrl=https://api.example.com&timeout=5000&retries=3"
Выбирай метод в зависимости от задачи: для простого получения значений используй Object.values(), для работы с ключами и значениями — Object.entries().