从Javascript数组中获取数组数据?
问题描述:
我有这样一种阵列的javasript:从Javascript数组中获取数组数据?
{id: 'ZM', name: "Zambia"},
{id: 'MZ', name: "Mozambique"},
{id: 'BW', name: "Botswana"},
{id: 'NA', name: "Namibia"},
{id: 'MW', name: "Malawi"},
{id: 'ZW', name: "Zimbabwe"},
我怎么能由ID( 'BW',MW)取perticuler数组记录?例如,取后,我想数组记录如下图所示:
{id: 'BW', name: "Botswana"},
{id: 'MW', name: "Malawi"}
答
你想是这样的:
function fetch(array, ids) {
return array.filter(function (el) {return ids.indexOf(el.id) !== -1;});
}
它返回一个只包含IDS阵列中的那些ID阵列的过滤器版本。 YOu可以像这样使用它:
var arr = [ {id: 'ZM', name: "Zambia"},
{id: 'MZ', name: "Mozambique"},
{id: 'BW', name: "Botswana"},
{id: 'NA', name: "Namibia"},
{id: 'MW', name: "Malawi"},
{id: 'ZW', name: "Zimbabwe"}];
function fetch(array, ids) {
return array.filter(function (el) {return ids.indexOf(el.id) !== -1;});
}
fetch(arr, ["BW","MW"]);//Outputs [{id: 'BW', name: "Botswana"},{id: 'MW', name: "Malawi"}]
看看'Array.prototype.filter' – 2014-08-30 11:26:34