jquery访问命名的JSON元素中的第n条记录

时间:2016-08-23 01:23:21

标签: javascript jquery json

我对如何通过与命名键匹配的数字访问元素感到困惑。我的数据看起来像这样,

item_a
    lot_1
       alpha : value
       beta : value
       charlie : value
    lot_2
       alpha : value
       beta : value
       charlie : value

我可以提取item_a的数据集,我可以按预期使用

获得v中的两个对象
var getMyItems="item_a";
var myJson = $.getJSON( "/jsonData.html", function(data) {
    $.each(data[getMyItems], function (k, v) {

现在我只想通过数组元素编号访问子数组lot_1 || lot_2中的一个,即[0] || [1]

我尝试了data[getMyItems][0]的组合,但没有得到所需的返回结果,

 var getMyItems="item_a";
    var myJson = $.getJSON( "/jsonData.html", function(data) {
        $.each(data[getMyItems][0], function (k, v) {


var getMyItems="item_a";
var myJson = $.getJSON( "/jsonData.html", function(data) {
    $.each(data[getMyItems], function (k, v) {
        $.each(v[0], function (key, val) {

2 个答案:

答案 0 :(得分:2)

要获得0,您可以执行以下操作:

var getMyItems="item_a";
var obj = data[getMyItems][0];
var myJson obj[Object.keys(obj)[0]];

答案 1 :(得分:0)

不能按照你想要的方式做到这一点,但这是一个解决方法 - 定义一个新功能:

data[getMyItems].get = function(n) {
    return this[Object.keys(this)[n]];
}

然后按如下方式使用它来通过索引访问对象属性:

var x = data[getMyItems].get(0)