Javascript 从现有阵列属性创建新阵列
我正在尝试从现有数组的有限值中创建一个新数组。在下面的示例中,LargeArray包含许多属性–年份、账簿、gdp和控制。假设我想创建一个只包含年份和gdp的新数组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
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 };
});