次のようにキーをループできます。
for (var key in data) {
console.log(key);
}
これは「名前」と「値」を記録します。
より複雑なオブジェクトタイプ(元の質問のような単純なハッシュのようなオブジェクトだけではない)がある場合は、オブジェクトのプロトタイプのキーではなく、オブジェクト自体に属するキーのみをループする必要があります。
for (var key in data) {
if (data.hasOwnProperty(key)) {
console.log(key);
}
}
お気づきのように、キーは特定の順序であるとは限りません。これが以下とどのように異なるかに注意してください。
for each (var value in data) {
console.log(value);
}
この例では、値をループ処理するため、とを記録Property Name
し0
ます。注意:for each
構文はほとんどFirefoxでのみサポートされており、他のブラウザではサポートされていません。
ターゲットブラウザがES5をサポートしている場合、またはサイトにes5-shim.js
(推奨)が含まれている場合は、次のものも使用できますObject.keys
。
var data = { Name: 'Property Name', Value: '0' };
console.log(Object.keys(data)); // => ["Name", "Value"]
とループしArray.prototype.forEach
ます:
Object.keys(data).forEach(function (key) {
console.log(data[key]);
});
// => Logs "Property Name", 0