假设对象初始化如下:
var myObj = {
"key1":"val1",
"key2":"val2",
"key3":"val3",
...
};
我可以检索这样的键值吗?
var retrKey1 = myObj[0];
var retrKey2 = myObj[1];
var retrKey3 = myObj[2];
...
我想解决的问题是我需要从这个对象中选择随机键值。生成随机数不是问题,但是:
如果没有,我的选择是什么?
答案 0 :(得分:4)
不,因为属性键之间没有排序。如果需要有序键,则需要使用数组。
您可以定义这样的结构:
var myObj = [
{key:"key1", val:"val1"},
...
];
答案 1 :(得分:4)
Object.keys方法返回一个对象属性数组。您可以使用数字索引数组。
var myObj = {
"key1":"val1",
"key2":"val2",
"key3":"val3",
...
};
var keys = Object.keys(myObj);
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys