Javascript对象可以像数组一样访问吗?
Can Javascript objects be accessed like arrays?
假设一个对象初始化如下:
var myObj = {
"key1":"val1",
"key2":"val2",
"key3":"val3",
...
};
我可以像这样检索键值吗?
var retrKey1 = myObj[0];
var retrKey2 = myObj[1];
var retrKey3 = myObj[2];
...
我试图解决的问题是我需要从这个对象中挑选随机键值。生成随机数不是问题,但是:
- 如何检索对象/映射中的键数?
- 我可以像在数组中那样使用整数索引检索键值吗?
如果没有,我有什么选择?
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
否,因为属性键之间没有排序。如果你想要有序的键,你需要使用数组。
你可以定义一个这样的结构:
var myObj = [
{key:"key1", val:"val1"},
...
];
相关文章:
- 访问布局信息是否也会导致浏览器重排
- Javascript,访问一个主要对象模块模式中的每个对象
- 如何访问声音管理器2创建的声音对象
- 在Twitter上用ie9中的空白src访问iframe的contentWindow
- JavaScript Pub/Sub属性访问问题
- 从JavaScript访问struts操作中的属性
- 是否可以从父类访问子类的属性
- 如何访问fastOpt.js
- 访问JSON对象内部的数组元素
- 从模块内部访问Express装载路径
- 难以访问的JS环境中的语法错误
- 如何从对象的原型方法访问JavaScript对象属性
- 访问json数组中的对象
- Javascript对象可以像数组一样访问吗?
- jQuery风格的函数,可以像对象一样访问
- 使用 top_of_stack(n).value 访问像堆栈一样的数组
- 像矩阵一样访问对象的javaScript数组
- GM_xmlhttpRequest是否访问网站,就像我在浏览器中访问网站一样
- 使变量像窗口一样可访问
- 像数组一样访问json对象中的元素