var userLists = {
user0 : {username: 'user9110252username', genrePref: 'user9110252genre'},
user1 : {username: 'Jon', genrePref: 'rock'},
user2 : {username: 'Lucy', genrePref: 'pop'},
user3 : {username: 'Mike', genrePref: 'rock'},
}
我从应该像userLists.user0的地方获得像userLists.user这样的输入,我如何转换这个请求
var i =0;
for(var key in userLists) {
console.log(userLists.user+i)
i++;
}
如果你想使用forEach
或map
你可以在数组上这样做,但由于你有一个对象,你可以使用Object.entries
来获取数组数组。还有Object.keys
和Object.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);
})
如果我正确理解你的问题,你想要这样吗?
var userLists = {
user0 : {username: 'user9110252username', genrePref: 'user9110252genre'},
user1 : {username: 'Jon', genrePref: 'rock'},
user2 : {username: 'Lucy', genrePref: 'pop'},
user3 : {username: 'Mike', genrePref: 'rock'},
}
var result = Object.fromEntries(Object.entries(userLists).map(([k,v], i)=>[k=i, v]));
console.log(result);
或者,您可以根据需要在map function
内部进行类似的操作。