JavaScriptのObject.values()の使い方:引数・戻り値・実例と注意点
Object.values()でオブジェクト自身の列挙可能な値を取得する方法を解説。引数と戻り値、実行結果付きのコード、間違えやすい点、ブラウザー・Node.js対応を確認できます。
Object.values() は、オブジェクト自身の列挙可能な値を取得するための静的メソッドです。この記事では基本例と境界条件の例を実行し、結果を確かめながら使い方を学びます。
Object.values()でできること
活用する場面
教科別の得点を合計します。値がすべて数値かは別途検証し、文字列の連結を防ぎます。
呼び出す対象
型や組み込みオブジェクトの名前に続けて呼び出します。個々のインスタンスに付けるメソッドとは区別します。
書き方・引数・戻り値
基本構文
次は引数の位置を示す構文です。array や text などの名前は実際の対象の変数へ置き換えます。引数が必要な関数では、構文だけでなく後の完成例を実行してください。
Object.values(object)引数
対象オブジェクト。列挙可能な自身の文字列キーに対応する値を取得します。
戻り値と元データへの影響
値の配列。
実行方法はブラウザーとNode.jsの2つ
ブラウザーで試す
開発者ツールのConsoleを開き、後の「基本例」のコードを実行します。繰り返し貼り付けて変数名の再宣言エラーが出る場合は、ページを再読み込みするか、コード全体をブロックで囲みます。出力はページ本文ではなくConsoleに表示されます。
ファイルで実行する場合は index.html と main.js を同じフォルダーへ保存します。次のHTMLをブラウザーで開いてからConsoleを確認します。main.js には基本例のJavaScriptを記述してください。
<!doctype html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Object.values()の練習</title>
<script src="./main.js" defer></script>
</head>
<body><h1>実行結果は開発者ツールのConsoleに表示されます</h1></body>
</html>Node.jsで試す
同じ基本例を main.js に保存し、そのフォルダーのターミナルで次を実行します。HTMLは使いません。結果はターミナルに表示されます。Node.jsが未導入の場合はJavaScript入門の実行環境を先に確認してください。
node --version
node main.jsこの記事はJavaScript標準の関数・メソッドが対象で、DOM操作は使いません。実行環境が対象機能に対応していることを下の互換性情報で確認してください。非同期の例は async function の中で await を使うため、通常のスクリプトとして保存できます。
実行結果で学ぶ基本例
main.jsに書くコード
const scores = { math: 80, english: 90 };
console.log(Object.values(scores).reduce((sum, score) => sum + score, 0));実行結果と読み方
170教科別の得点を合計します。値がすべて数値かは別途検証し、文字列の連結を防ぎます。
間違えやすい点と境界条件
注意する仕様
キー情報を失います。表示ラベルと値を対にして扱う場合はObject.entriesを選びます。
別の条件で確かめる
次のコードは基本例とは独立しています。main.js の内容を置き換えて実行してください。
console.log(JSON.stringify(Object.values({})));[]エラーを捕捉する例では、エラー名やメッセージも期待する出力の一部です。成功例だけでなく、空の入力・型の違い・該当なしといった条件を確かめると、実際の画面やデータ処理へ組み込みやすくなります。
ブラウザーとNode.jsの互換性
対応開始版の目安
次はMDN Browser Compatibility Data 8.1.2の記録です。2026年9月21日に確認しました。開始版はサポート中の推奨バージョンを意味しません。実際に配布するコードで使う構文や引数の追加仕様についても、対象環境で確認してください。
- Chrome:54以降
- Edge:14以降
- Firefox:47以降
- Safari:10.1以降
- Android版Chrome:54以降
- iOS版Safari:10.3以降
- Node.js:7.0.0以降
部分対応・補足条件ありの場合は、MDNの互換性表の注記も確認します。この表はデータに基づく情報で、すべてのブラウザーで実機検証したという意味ではありません。
練習と関連する関数
入力を変えて結果を予測する
基本例の入力を1か所変え、実行前に戻り値を予測します。次に境界条件の例と比べ、元データが変わるか、失敗時に例外が出るか、値として返るかを説明してください。
次に読む記事
Object.keys()の使い方Object.entries()の使い方Object.fromEntries()の使い方Object.assign()の使い方- JavaScript関数・メソッド一覧
- 関数・スコープ・モジュール