Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.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 - Fatal编程技术网

如何";“干净”;javascript中的数组?

如何";“干净”;javascript中的数组?,javascript,arrays,Javascript,Arrays,我被困在这里了。如何清理此阵列: {"data":[{"id":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]} 所以它看起来像: ["5201521d42","52049e2591","52951699w4"] 我正在使用Javascript。您只需迭代现有的数据数组,取出每个id值并将其放入一个新的“干净”数组中,如下所示: var raw = {"data":[{"":"5201521d42"},{"id":"52049e2

我被困在这里了。如何清理此阵列:

{"data":[{"id":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]}
所以它看起来像:

["5201521d42","52049e2591","52951699w4"]

我正在使用Javascript。

您只需迭代现有的数据数组,取出每个id值并将其放入一个新的“干净”数组中,如下所示:

var raw = {"data":[{"":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
var clean = [];
for (var i = 0, len = raw.data.length; i < len; i++) {
    clean.push(raw.data[i].id);
}
var raw={“data”:[{”“:“5201521d42”},{“id”:“52049e2591”},{“id”:“52951699w4”}]};
var clean=[];
对于(变量i=0,len=raw.data.length;i
您只需迭代现有数据数组,取出每个id值并将其放入一个新的“干净”数组中,如下所示:

var raw = {"data":[{"":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
var clean = [];
for (var i = 0, len = raw.data.length; i < len; i++) {
    clean.push(raw.data[i].id);
}
var raw={“data”:[{”“:“5201521d42”},{“id”:“52049e2591”},{“id”:“52951699w4”}]};
var clean=[];
对于(变量i=0,len=raw.data.length;i
执行以下操作:

var cleanedArray = [];
for(var i=0; i<data.length; i++) {
  cleanedArray.push(data[i].id);
}
data = cleanedArray;
var cleanedaray=[];
对于(var i=0;i执行以下操作:

var cleanedArray = [];
for(var i=0; i<data.length; i++) {
  cleanedArray.push(data[i].id);
}
data = cleanedArray;
var cleanedaray=[];

对于(var i=0;i,如果您可以使用ES5,并且性能不重要,我建议您:

编辑: 从这个角度看,map与manual for的速度大约慢7-10倍,考虑到这已经是每秒数百万次的操作,这实际上并没有那么多。因此,在避免过早优化的范例下,这是一个更干净的方法

var dump = {"data":[{"id":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
var ids = dump.data.map(function (v) { return v.id; });
否则:

var data = dump.data;
var ids = [];
for (var i = 0; i < data.length; i++) {
  ids.push(data[i].id);
}
var data=dump.data;
var-id=[];
对于(变量i=0;i
如果您可以使用ES5,而且性能并不重要,我建议您:

编辑: 从这个角度看,map与manual for的速度大约慢7-10倍,考虑到这已经是每秒数百万次的操作,这实际上并没有那么多。因此,在避免过早优化的范例下,这是一个更干净的方法

var dump = {"data":[{"id":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
var ids = dump.data.map(function (v) { return v.id; });
否则:

var data = dump.data;
var ids = [];
for (var i = 0; i < data.length; i++) {
  ids.push(data[i].id);
}
var data=dump.data;
var-id=[];
对于(变量i=0;i
看看这个。我想这就是你要找的

oldObj={"data":[{"":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
oldObj = oldObj.data;
myArray = [];

for (var key in oldObj) {

   var obj = oldObj[key];
   for (var prop in obj) {
      myArray.push(obj[prop]);
   }
}
console.log(myArray)
看看这个,我想这就是你要找的

oldObj={"data":[{"":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
oldObj = oldObj.data;
myArray = [];

for (var key in oldObj) {

   var obj = oldObj[key];
   for (var prop in obj) {
      myArray.push(obj[prop]);
   }
}
console.log(myArray)
覆盖同一对象 您要做的是用其
id
属性的值替换现有对象。

覆盖同一对象
您要做的是用其
id
属性的值替换现有对象。

使用中定义的回退代码将定义用户浏览器缺少的函数。

使用中定义的回退代码将定义用户浏览器缺少的函数。

您正在执行操作逻辑上减少维度。或者您可以说您正在从qube中提取单个维度。您甚至可以说
从对象数组中选择列
。但是术语clean与您的问题不匹配

var data = {"data":[{"":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]}; 
var clean_array = []; 
for( var i in data.data )
{ 
    for( var j in data.data[i] ) 
    { 
        clean_array.push( data.data[i][j] ) 
    } 
} 
console.log( clean_array );
var list = [];
var raw = {"data":[{"id":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
for(var i=0; i < raw.data.length ; ++i){
  list.push(raw.data[i].id);
}
var list=[];
var raw={“data”:[{“id”:“5201521d42”},{“id”:“52049e2591”},{“id”:“52951699w4”}]};
对于(变量i=0;i
您实际上是在降维。或者您可能会说您正在从qube中提取一个维度。您甚至可能会说
从对象数组中选择一列
。但是术语clean与您的问题不符

var list = [];
var raw = {"data":[{"id":"5201521d42"},{"id":"52049e2591"},{"id":"52951699w4"}]};
for(var i=0; i < raw.data.length ; ++i){
  list.push(raw.data[i].id);
}
var list=[];
var raw={“data”:[{“id”:“5201521d42”},{“id”:“52049e2591”},{“id”:“52951699w4”}]};
对于(变量i=0;i
阵列上使用
映射功能

data.map(function(item) { return item.id; });
这将返回:

["5201521d42", "52049e2591", "52951699w4"]

什么是
map
?它是一种使用所提供函数的结果创建新数组的方法。请阅读所有相关内容:

数组上使用
map
函数:

data.map(function(item) { return item.id; });
这将返回:

["5201521d42", "52049e2591", "52951699w4"]

什么是
map
?它是一种使用所提供函数的结果创建新数组的方法。阅读所有内容:

您的意思是删除散列并将值放入其中?我需要清除数组中除数字以外的所有内容,以便成品如例2所示。单词“cleaning”表示思维方式错误。您不是在“清理”数据结构。您是在从一个数据结构中提取信息以构建另一个数据结构。您的意思是删除散列并将值放入?我需要清理数组中除数字以外的所有内容,以便成品如例2所示。单词“清理”表示思维方式错误。您没有“清理”数据结构。您正在从一个数据结构提取信息以构建另一个数据结构。+1我正要发布
.map()
answer。我敢打赌,作为本机方法,它的性能相当不错,但没有垫片那么好。+1我正要发布
.map()
回答。我敢打赌它作为本机方法会有相当好的性能,但没有垫片那么好。在
中用
迭代
数组
,在
中用
迭代
数组