假设我创建了一个对象:
var myObject =
{"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"};
Run Code Online (Sandbox Code Playgroud)
检索属性名称列表的最佳方法是什么?即我想最终得到一些变量'键',这样:
keys == ["ircEvent", "method", "regex"]
Run Code Online (Sandbox Code Playgroud) 如何枚举JavaScript对象的属性?
我实际上想要列出所有已定义的变量及其值,但我已经了解到定义变量实际上会创建窗口对象的属性.
是否可以将对象属性名称作为字符串
person = {};
person.first_name = 'Jack';
person.last_name = 'Trades';
person.address = {};
person.address.street = 'Factory 1';
person.address.country = 'USA';
Run Code Online (Sandbox Code Playgroud)
我想像这样使用它:
var pn = propName( person.address.country ); // should return 'country' or 'person.address.country'
var pn = propName( person.first_name ); // should return 'first_name' or 'person.first_name'
Run Code Online (Sandbox Code Playgroud)
先谢谢你
注意:此代码正是我正在寻找的.我明白这听起来很愚蠢,但事实并非如此.
这就是我想用它做的事情.
HTML
person = {};
person.id_first_name = 'Jack';
person.id_last_name = 'Trades';
person.address = {};
person.address.id_address = 'Factory 1';
person.address.id_country = 'USA';
extPort.postMessage
(
{
message : MSG_ACTION,
propName( person.first_name ): person.first_name
} …Run Code Online (Sandbox Code Playgroud) RaceArray: [{
Unknown: 0,
Caucasian: 1,
AfricanAmerican: 2,
AmericanIndian: 3,
Asian: 4,
Hispanic: 5,
Other: 6
}]
Run Code Online (Sandbox Code Playgroud)
如何在我的JavaScript中单独访问密钥并将其作为单独的数组形成.
期望的结果...
RaceArray = ['Unknown','Caucasian']
Run Code Online (Sandbox Code Playgroud)