Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.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_Jquery_Arrays - Fatal编程技术网

Javascript 从现有阵列属性创建新阵列

Javascript 从现有阵列属性创建新阵列,javascript,jquery,arrays,Javascript,Jquery,Arrays,我正在尝试从现有数组的有限值中创建一个新数组。在下面的示例中,LargeArray包含许多属性–年份、账簿、gdp和控制。假设我想创建一个只包含年份和gdp的新数组 var LargeArray = [ {year:1234, books:1200, gdp:1200, control:1200}, {year:1235, books:1201, gdp:1200, control:1200}, {year:1236, books:1202, gdp:1200, co

我正在尝试从现有数组的有限值中创建一个新数组。在下面的示例中,LargeArray包含许多属性–年份、账簿、gdp和控制。假设我想创建一个只包含年份和gdp的新数组

var LargeArray = [
    {year:1234, books:1200, gdp:1200, control:1200}, 
    {year:1235, books:1201, gdp:1200, control:1200}, 
    {year:1236, books:1202, gdp:1200, control:1200}
];
我正在尝试获取的新阵列如下所示:

var NewArray = [
    {year:1234, gdp:1200},
    {year:1235, gdp:1200},
    {year:1236, gdp:1200}
];
使用

演示:

使用

演示:

使用

注意:Array.prototype.map是最近添加的。使用MDN中的垫片来支持较旧的浏览器

使用

注意:Array.prototype.map是最近添加的。使用MDN中的垫片来支持较旧的浏览器


我想使用Jquery创建新的数组,我不确定map函数是否有帮助。如果使用纯javaScript更好,那也很好。我想使用Jquery创建新的数组,我不确定map函数是否有帮助。如果使用纯javaScript更好,那也很好。我刚查了$.map,它提到通过$.makeArray运行数组-这在这里相关吗?@RUJordan不,这不是因为OP有一个实际的数组。我刚查了$.map,它提到通过$.makeArray运行数组-这在这里相关吗?@RUJordan不,这不是因为OP有一个实际的数组
var LargeArray = [{year:1234, books:1200, gdp:1200, control:1200}, {year:1235, books:1201, gdp:1200, control:1200}, {year:1236, books:1202, gdp:1200, control:1200}, {year:1237, books:1203, gdp:1200, control:1200}, {year:1238, books:1204, gdp:1200, control:1200}];
var NewArray = $.map(LargeArray, function (value) {
    return {
        year: value.year,
        gdp: value.gdp
    }
})
var newArray = largeArray.map(function(obj) {
  return { year: obj.year, gdp: obj.gdp };
});