【发布时间】:2023-01-19 23:37:59
【问题描述】:
我希望函数通过两个表,50 以下和 51 到 75 之间,并匹配三个参数。如果这三个匹配一个数组,那么我希望它返回“良好匹配”,如果不是,我希望它匹配前两个并返回数组的第三个元素。我为此伤透了脑筋(退出编程新手),我不明白为什么它返回未定义或错误的元素。 (可能绝对不是这样做的方法)。
const kabelDikte = ( automaat, meter, typeKabel) => {
const tableBetween51and75 = [
[16, 75, 4],
[20, 75, 4],
[25, 75, 6],
[32, 75, 10],
[40, 75, 10],
[50, 75, 10],
[63, 75, 16],
[80, 75, 25],
];
const tableUnder50 = [
[16, 50, 2.5],
[20, 50, 2.5],
[25, 50, 4],
[32, 50, 6],
[40, 50, 6],
[50, 50, 10],
[63, 50, 10],
[80, 50, 16],
];
let match50 = [];
let match75 = [];
match50 = tableUnder50.filter((array) => {
return array[0] === automaat && meter <= array[1];
});
match75 = tableBetween51and75.filter((array) => {
return array[0] === automaat && meter <= array[1];
});
if(match50[0].slice(2) === typeKabel){
return "Good match"
} else if (match50[0].slice(2) !== typeKabel){
return match50[0].slice(2)
}else if (match75[0].slice(2) === typeKabel){
return "Good match"
}else if (match75[0].slice(2) !== typeKabel){
return match50[0].slice(2)
} else {
return "No match"
}
}
if(match50[0].slice(2) === typeKabel){
return "Good match"
} else if (match50[0].slice(2) !== typeKabel){
return match50[0].slice(2)
}else if (match75[0].slice(2) === typeKabel){
return "Good match"
}else if (match75[0].slice(2) !== typeKabel){
return match50[0].slice(2)
} else {
return "No match"
}
}
console.log(kabelDikte(16,49,2.5));
【问题讨论】:
标签: javascript arrays