Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.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/arrays/13.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,我有以下数组,显示员工姓名、id和部门 var employees = [ ["John","001","Sales"] ["Mike","002","Sales"] ["Adam","003","Eng"] ["Sam","004","Sales"] ["Emma","005","Eng"] ]; 如何基于另一列从该数组中获取特定列。例如,我希望获得所有“工程”部门的ID编号列,其结果为: ["003","005"] 首先,您需要对数组进行筛选,然后通过映射方法获取必要的值: var员工

我有以下数组,显示员工姓名、id和部门

var employees = [
["John","001","Sales"]
["Mike","002","Sales"]
["Adam","003","Eng"]
["Sam","004","Sales"]
["Emma","005","Eng"]
];
如何基于另一列从该数组中获取特定列。例如,我希望获得所有“工程”部门的ID编号列,其结果为:

["003","005"]

首先,您需要对数组进行
筛选
,然后通过
映射
方法获取必要的值:

var员工=[
[“约翰”、“001”、“销售”],
[“迈克”、“002”、“销售”],
[“亚当”、“003”、“英语”],
[“Sam”、“004”、“销售”],
[“Emma”、“005”、“Eng”]
];    
const result=employees.filter(f=>f.some(s=>s=='Eng')).map([a,b,c])=>b);
控制台日志(结果)
您可以在数组上使用
map()
来过滤并获取所需的数据

var员工=[
[“约翰”、“001”、“销售”],
[“迈克”、“002”、“销售”],
[“亚当”、“003”、“英语”],
[“Sam”、“004”、“销售”],
[“Emma”、“005”、“Eng”]
];
功能getColumnFor(数据,部门){
常量输出=[];
数据映射(功能(项){
如果(项目[2].toLowerCase()==部门toLowerCase()){
输出推送(第[1]项);
}
});
返回输出;
}
const result=getColumnFor(员工,英语);

控制台日志(结果)如果您的数组是formate格式的,则可以执行以下操作

var员工=[
[“约翰”、“001”、“销售”],
[“迈克”、“002”、“销售”],
[“亚当”、“003”、“英语”],
[“Sam”、“004”、“销售”],
[“Emma”、“005”、“Eng”]
];
var代码=[];
for(员工中的风险值k){
如果(员工[k][2]=='Eng'){
代码.推送(员工[k][1]);
}
}

控制台日志(代码)谢谢!工作起来很有魅力@霍齐:我很高兴帮助你!:)