2

是否可以将对象的属性名称作为字符串数组获取?

例如,如果我制作了对象:

var obj = {
 prop1: true,
 prop2: false,
 prop3: false
}

s 有一些方法 'getPropNames(obj)' 会返回一个数组,其中每个元素都是一个属性名称,所以它看起来像这样:

props[0] = "prop1" 
props[1] = "prop2" 
props[2] = "prop3" 

提前感谢您的帮助。

4

3 回答 3

8

您正在寻找Object.keys(obj)

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys

于 2013-08-11T04:59:56.550 回答
1

你也可以试试这个。

function  getPropName(obj) {
    var propNameArray= [];
    for (var propertyName in obj) {
      propNameArray.push(propertyName);
      }
    console.log(propNameArray);
  }
于 2013-08-11T05:03:52.923 回答
0

您可以在 GoogleScriptExamples.com underscoreGS上试用此库

function checkKeys(){
    var obj = {
     prop1: true,
     prop2: false,
     prop3: false
    };

    var keys = underscoreGS._keys(obj);
    Logger.log(keys);
}

库项目密钥:MiC3qjLYVUjCCUQpMqPPTWUF7jOZt2NQ8

于 2013-08-12T05:04:29.633 回答