在运行时动态获取javascript中数组成员的名称
首先,我不确定它在javascript中是否真的可行,但我仍然觉得值得一问 好的,我要做的是获取数组或对象成员的名称,就像您在运行时动态地说的那样 让我解释一下。我有一个这样的物体: 结果:- 成员名称1:值1 成员名称2:值2 成员名称3:值3 这里,结果是对象的名称,该对象有成员,如member_name1、member_name2等,并且分别有值,如value_1和value_2。我想做的是在运行时获取成员的名称,比如member_name1;不是因为它的价值。我通常通过Results.member_name1访问该值 我希望我能够描述这个问题 下面是该对象的屏幕截图: 谢谢 假设obj是您的对象,您可以通过以下方式获取其所有属性的名称:在运行时动态获取javascript中数组成员的名称,javascript,object,runtime,dynamically-generated,members,Javascript,Object,Runtime,Dynamically Generated,Members,首先,我不确定它在javascript中是否真的可行,但我仍然觉得值得一问 好的,我要做的是获取数组或对象成员的名称,就像您在运行时动态地说的那样 让我解释一下。我有一个这样的物体: 结果:- 成员名称1:值1 成员名称2:值2 成员名称3:值3 这里,结果是对象的名称,该对象有成员,如member_name1、member_name2等,并且分别有值,如value_1和value_2。我想做的是在运行时获取成员的名称,比如member_name1;不是因为它的价值。我通常通过Results.m
var names = [];
for(var name in obj) {
names.push(name);
}
但是,请注意,这也将获取通过其类的prototype属性对obj进行的任何扩展。如果要排除这些属性,而只获取在obj本身上定义的属性,可以使用
for(var name in obj) {
if(obj.hasOwnProperty(name)) {
names.push(name);
}
}
有关for…in.的详细信息假定obj是您的对象,您可以通过以下方式获取其所有属性的名称:
var names = [];
for(var name in obj) {
names.push(name);
}
但是,请注意,这也将获取通过其类的prototype属性对obj进行的任何扩展。如果要排除这些属性,而只获取在obj本身上定义的属性,可以使用
for(var name in obj) {
if(obj.hasOwnProperty(name)) {
names.push(name);
}
}
有关for…in.的更多信息。您可以使用JavaScript for construct访问它们。考虑以下事项:
var member_names = [],
data = {
foo1: 'bar1',
foo2: 'bar2',
foo3: 'bar3',
};
for (var i in data) {
member_names.push(i);
}
console.log(member_names);
这里有一个名为*member_names*的空数组和您的数据对象。在我们的循环中,我将引用属性名,因此您可以将其推送到member_names数组中,然后在那里访问它们。您可以使用JavaScript for construct访问它们。考虑以下事项:
var member_names = [],
data = {
foo1: 'bar1',
foo2: 'bar2',
foo3: 'bar3',
};
for (var i in data) {
member_names.push(i);
}
console.log(member_names);
这里有一个名为*member_names*的空数组和您的数据对象。在我们的循环中,我将引用属性名,因此您可以将其推送到member_names数组中,然后在那里访问它们