在js中获取对象的键的名称

时间:2013-08-28 05:28:12

标签: javascript jquery

我希望有一个非常简单的问题,但如果我有代码

console.log("my args", args);

并且返回的结果是

Object { pageList1=null}

我如何获得名称pageList1

没关系,这是null我只需要名称pageList1 ..

这是我试过的

parse: function (result, args) {
    var myKey = Object.keys(args);

    return result.data.myKey;
}

好的,所以使用答案我更新了代码

parse: function (result, args) {

    for (variable in args) {

        return result.data.variable;
    }

}

但是这不仅仅是名称变量,因为它不在JSON结构中。

好的,答案是

parse: function (result, args) {

    var pageListVariable = Object.keys(args)[0];

    return result.data[pageListVariable];
}

当需要更改json的调用时。需要用[]

替换

3 个答案:

答案 0 :(得分:1)

您应该使用for in

for (variable in object) {
  console.log(variable)
}

答案 1 :(得分:1)

Object.keys是访问对象键的好方法,但它确实在字符串数组中为您提供了所有键。顺便提一下,你的对象碰巧只有一个键,但是该函数仍然产生一个数组,尽管只有一个字符串。 (事实上​​,如果将单键对象视为一种特殊情况并且只产生一个字符串,则会非常不方便;在迭代结果之前,您总是必须进行类型检查。)

如果在您的特定情况下,您知道总是只有一个密钥,那么可以立即通过索引Object.keys(args)[0]进行访问。

答案 2 :(得分:0)

希望这会有所帮助:

var keys = [];
for (x in args) {
  console.log("Key=>" + x +", val="+args[x]);
  keys.push (x); //where x is the key
}
alert(keys);