使用索引获取JS对象的元素

时间:2013-02-10 20:55:32

标签: javascript object

好的,让我说我有我的对象

myobj = {"A":["Abe"], "B":["Bob"]}

我希望得到第一个元素。正如我希望它返回Abe,其索引为A。我怎样才能按照myobj[0]的方式做一些事情并走出“安倍”。

7 个答案:

答案 0 :(得分:49)

我知道这是一个迟到的答案,但我认为这是OP所要求的。

myobj[Object.keys(myobj)[0]];

答案 1 :(得分:15)

JS对象没有已定义的顺序,它们(根据定义)是一组未排序的键值对。

如果用“first”表示“首先按字典顺序排列”,则可以使用:

var sortedKeys = Object.keys(myobj).sort();

然后使用:

var first = myobj[sortedKeys[0]];

答案 2 :(得分:2)

var myobj = {"A":["Abe"], "B":["Bob"]};

var keysArray = Object.keys(myobj);

var valuesArray = Object.keys(myobj).map(function(k) {

   return String(myobj[k]);

});

var mydata = valuesArray[keysArray.indexOf("A")]; // Abe

答案 3 :(得分:0)

Object.keys(city)[0];   //return the key name at index 0
Object.values(city)[0]  //return the key values at index 0

答案 4 :(得分:-1)

myobj.A

-------或----------

myobj['A']

会让你'B'

答案 5 :(得分:-1)

我希望这会有所帮助

.getScript()

答案 6 :(得分:-2)

如果您需要特定订单,则必须使用数组,而不是对象。对象没有定义的顺序。

例如,使用数组,您可以这样做:

var myobj = [{"A":["B"]}, {"B": ["C"]}];
var firstItem = myobj[0];

然后,您可以使用myobj [0]来获取数组中的第一个对象。

或者,取决于你想要做的事情:

var myobj = [{key: "A", val:["B"]}, {key: "B",  val:["C"]}];
var firstKey = myobj[0].key;   // "A"
var firstValue = myobj[0].val; // "["B"]