我在控制台中有一个如下所示的数组。
console.log(roles);
User {0: "AdminUser", 1: "AuthenticatedUser"}
虽然它是一个数组但我无法获得数组长度。
console.log(roles.length);
undefined
但是如果使用索引访问数组,我可以得到如下所示的值。
console.log(roles[0]);
AdminUser
答案 0 :(得分:0)
它不是一个数组,显然是一个对象。
您可以使用类似数组的表示法访问它的原因是JS支持方括号访问表示法。 由于你有数字作为键,它可能有点误导。
答案 1 :(得分:0)
感谢Pietro,在了解了Object.keys()后,我通过Google找到了解决方案。
Object.keys(roles).forEach(function(key) {
console.log(key + ': ' + roles[key]);
});
对于那些投票的人来说,这是我今天学到的关于Object.keys()的新事物。感谢您通过投票表决获得的鼓励。 :)