Javascript 如何使用数组存储其他变量的名称?

Javascript 如何使用数组存储其他变量的名称?,javascript,arrays,json,list,data-structures,Javascript,Arrays,Json,List,Data Structures,我刚刚写完JavaScrip代码,我想知道是否可以使用数组来存储变量名并利用它 假设这是我的AJAX响应文本 [{"NumOfColumn" : "11"},{"t_id" : "TSK_000001","t_name" : "Reviewing project's user"}] 如您所见,此数组由两个具有不同变量名的对象组成 这就是我通常处理接收到的数据集的方式 var arr = JSON.parse(this.data); for(i = 1; i < rows ; i++)

我刚刚写完JavaScrip代码,我想知道是否可以使用数组来存储变量名并利用它

假设这是我的AJAX响应文本

[{"NumOfColumn" : "11"},{"t_id" : "TSK_000001","t_name" : "Reviewing project's user"}]
如您所见,此数组由两个具有不同变量名的对象组成

这就是我通常处理接收到的数据集的方式

var arr = JSON.parse(this.data);
  for(i = 1; i < rows ; i++)
    {
        out += "<tr><td>"+
                arr[i].t_id +
                "</td><td>" +
                arr[i].t_name+
        out += "</td></tr>";
    }
table.childNodes[5].innerHTML = out;
另一个像

[{"c": "cat", "d": "meow"}] . 
传统上,如果我想从这些对象中的一个获取数据,我必须像这样编写代码

arr[i].a + arr[i].b 
获取第一个对象的数据。然后是第二个对象

arr[i].c + arr[i].d
我的问题是,在处理获取数据之前,我们如何获取每个对象的变量名,以及存储每个对象的变量名

如果有一个解决方案,那么,您就不再需要编写这样的代码了

是的

arr[i].(something that stores a,b and c,d or other varies from different objects ).
我真的很难解释这个想法。请留下一些评论

谢谢。

var namesArray=[];
var namesArray = [];
for(var i = 0; i< test.length; i++){
    for(var me in test[i]){
        namesArray.push(me);
     }
}
对于(变量i=0;i
假设测试是您的响应数组。

var namesArray=[];
对于(变量i=0;i

假设测试是您的响应数组。

您的问题不是很清楚。但是,如果您正在寻找一种方法来创建一个数组,该数组应该包含对象所有属性的名称,那么您可以按如下所示进行操作

var obj = { 
  t_id: "TSK_000001" ,
  t_name: "Reviewing project's user"
};

var arrayOfPropertyNames = [];

for(var propertyName in obj){
  arrayOfPropertyNames.push(propertyName);

}

console.log(arrayOfPropertyNames);

你的问题不是很清楚。但是,如果您正在寻找一种方法来创建一个数组,该数组应该包含对象所有属性的名称,那么您可以按如下所示进行操作

var obj = { 
  t_id: "TSK_000001" ,
  t_name: "Reviewing project's user"
};

var arrayOfPropertyNames = [];

for(var propertyName in obj){
  arrayOfPropertyNames.push(propertyName);

}

console.log(arrayOfPropertyNames);

要从对象获取关键点,可以使用函数。
此函数返回键数组,因此您可以将其中的jey用于

所以,代码应该是这样的

var arr = JSON.parse(this.data);
for(i = 1; i < rows ; i++)
{
    var o = arr[i];
    out += "<tr>" + Object.keys(o).map(function(key){
      return "<td>" + o[key] + "</td>";
    }).join('') + "</tr>";
}
var arr=JSON.parse(this.data);
对于(i=1;i
甚至

out += JSON.parse(this.data).slice(1).map(function(o){
    return "<tr>" + Object.keys(o).map(function(key){
      return "<td>" + o[key] + "</td>";
    }).join('') + "</tr>";
}).join('');
out+=JSON.parse(this.data).slice(1).map(函数(o){
返回“”+对象键(o).map(函数键){
返回“+o[键]+”;
}).join(“”)+“”;
}).加入(“”);

要从对象获取密钥,可以使用函数。
此函数返回键数组,因此您可以将其中的jey用于

所以,代码应该是这样的

var arr = JSON.parse(this.data);
for(i = 1; i < rows ; i++)
{
    var o = arr[i];
    out += "<tr>" + Object.keys(o).map(function(key){
      return "<td>" + o[key] + "</td>";
    }).join('') + "</tr>";
}
var arr=JSON.parse(this.data);
对于(i=1;i
甚至

out += JSON.parse(this.data).slice(1).map(function(o){
    return "<tr>" + Object.keys(o).map(function(key){
      return "<td>" + o[key] + "</td>";
    }).join('') + "</tr>";
}).join('');
out+=JSON.parse(this.data).slice(1).map(函数(o){
返回“”+对象键(o).map(函数键){
返回“+o[键]+”;
}).join(“”)+“”;
}).加入(“”);

您能更详细地描述您想要的输出吗?-从对象返回键数组,可用于使用getted keyssolution-use:-)能否更详细地描述所需的输出从对象返回键数组,您可以使用gettedkeysolution-use:-)收到的AJAX请求中每个对象的变量名都不相同。我的意思是,我真的想知道是否有人有想法构建一个灵活的系统,能够从具有不同类型结构的对象返回数据。接收到的AJAX请求中每个对象的变量名都不相同。我的意思是,我真的想知道是否有人有任何想法来构建一个灵活的系统,能够从具有不同结构的对象返回数据。