首页 > 解决方案 > 循环中javascript中的对象操作

问题描述

var userLists = {
    user0 : {username: 'user9110252username', genrePref: 'user9110252genre'},
    user1 : {username: 'Jon', genrePref: 'rock'},
    user2 : {username: 'Lucy', genrePref: 'pop'},
    user3 : {username: 'Mike', genrePref: 'rock'},
}

我从某个地方得到像 userLists.user 这样的输入,它应该像 userLists.user0 我怎样才能转换这个请求

var i =0;
for(var key in userLists) {
   console.log(userLists.user+i)
   i++;
}

标签: javascriptnode.js

解决方案


如果您想使用forEach或者map您可以在数组上执行此操作,但是由于您有一个对象,您可以使用它Object.entries来获取数组数组。还有Object.keysObject.values

var userLists = {
    user0 : {username: 'user9110252username', genrePref: 'user9110252genre'},
    user1 : {username: 'Jon', genrePref: 'rock'},
    user2 : {username: 'Lucy', genrePref: 'pop'},
    user3 : {username: 'Mike', genrePref: 'rock'},
}

Object.entries(userLists).forEach(([key, value]) => {
  console.log(key, value);
})


推荐阅读