Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从键/值结构中格式化的数组中检索值_Javascript_Arrays_Key Value - Fatal编程技术网

Javascript 从键/值结构中格式化的数组中检索值

Javascript 从键/值结构中格式化的数组中检索值,javascript,arrays,key-value,Javascript,Arrays,Key Value,我有一个使用console.log输出如下的数组: ["{"Heading":"EmployeeNumber","Type":"Text"}", "{"Heading":"First Name","Type":"Text"}", "{"Heading":"Last Name","Type":"Text"}", "{"Heading":"Payroll","Type":"Text"}", "{"Heading":"MonthlyEmployeeCost","Type":"Text"}

我有一个使用console.log输出如下的数组:

["{"Heading":"EmployeeNumber","Type":"Text"}",
 "{"Heading":"First Name","Type":"Text"}", 
 "{"Heading":"Last Name","Type":"Text"}", 
 "{"Heading":"Payroll","Type":"Text"}", 
 "{"Heading":"MonthlyEmployeeCost","Type":"Text"}",           
 "{"Heading":"MonthlyEmployerCost","Type":"Text"}", 
 "{"Heading":"Benefit","Type":"Text"}", "{"Heading":"DOB","Type":"Text"}"]
我想检索数组中每种类型的值。所以在上面的例子中,我希望每种类型的文本都能通过

请有人解释一下这是怎么做到的吗?

用于迭代

var arr = [{"Heading":"EmployeeNumber","Type":"Text"}, {"Heading":"First Name","Type":"Text"}, {"Heading":"Last Name","Type":"Text"}, {"Heading":"Payroll","Type":"Text"}, {"Heading":"MonthlyEmployeeCost","Type":"Text"}, {"Heading":"MonthlyEmployerCost","Type":"Text"}, {"Heading":"Benefit","Type":"Text"}, {"Heading":"DOB","Type":"Text"}];

for (obj of arr) {
    console.log(obj.Type);
}

下面的代码将输出所有文本类型数据,或者您可以将其存储到另一个数组中供自己使用。

首先,这种格式非常奇怪。我猜您有一些服务器端进程,对每个对象进行编码,将编码放入数组,然后对数组进行编码。这是有问题的

无论如何,数组中的每个项都被编码为JSON数据,因此需要分别解析每个项以获取其类型

您可以使用.map来收集结果

var数据=[{Heading:EmployeeNumber,Type:Text}',{Heading:First Name,Type:Text}',{Heading:Last Name,Type:Text}',{Heading:Payroll,Type:Text}',{Heading:MonthlyEmployeeCost,Type:Text}',{Heading:monthlyemployeercost,Type:Text}',{Heading:benefitude,Type:Text}',{Heading:DOB,Type:Text}'; var result=data.maps=>JSON.parses.Type;
console.logresult@MikeMcCaughan我同意你的看法,不过OP似乎有一系列字符串,而不是objects@Phil,那么合适的复制品应该是…@MikeMcCaughan找到了!我认为这只是Chrome控制台显示字符串数组的方式。请使用data array~控制台亲自尝试。logdata@Phil:我说的更多的是数组中单独的JSON字符串是奇数。我感觉OP的服务器代码正在对每个对象进行编码,将其放入数组中,然后再次编码。因此,当它进入浏览器时,JSON.parse只解码一个级别的编码。它看起来确实像双重编码