オブジェクトをforEachでループさせたい
配列をループさせるとき、forEachを使って以下のようにしますよね、
let array = ['a', 'b', 'c','d']
array.forEach((item) => {
console.log(item)
})
オブジェクトも同じようにforEachでループさせたい...!
let obj = {name: 'Tanaka',age: '20',from: 'Tokyo',}
//しかしこれはエラーになります
obj.forEach(function (v,i) {
// 処理...
})
オブジェクトに、forEachは使えない...
オブジェクトは、forEach()メソッドを持っていないので実行できません。
forEachを使いたいときは配列と違い一手間加える必要があります。
ではどうするか
1度オブジェクトを配列にしてからループさせます。
Object.keys()メソッドを利用して、オブジェクトのキーだけを取り出した配列を作成し、それをループさせる。
let obj = {name: 'Tanaka',age: '20',from: 'Tokyo',}
Object.keys(obj).forEach(function (key) {
console.log(key + "は" + obj[key])
})
ぜひ参考にしてみてください。