From what I understand you are trying to remove duplicates. What you have tried removes all the entries that have the same column.
Here is an answer based on a similar thing but for objects
Here I filter out entries based on unique column combinations
Hope this was what you meant
function getUniqueData(arr = [
[4, "frente", 196],
[4, "frente", 196],
[5, "frente", 196]
], uniqueCols = [0]) {
const uniqueData = arr.filter((currentRow, i, self) => {
return i === self.findIndex((t) => {
return uniqueCols.every((col) => t[col] === currentRow[col])
})
});
return uniqueData;
}
console.log(getUniqueData())
更多 case
function getUniqueData(arr = [
[4, "frente", 196],
[4, "frente", 196],
[5, "frente", 196]
], uniqueCols = [1]) {
const uniqueData = arr.filter((currentRow, i, self) => {
return i === self.findIndex((t) => {
return uniqueCols.every((col) => t[col] === currentRow[col])
})
});
return uniqueData;
}
console.log(getUniqueData())
function getUniqueData(arr = [
[4, "a", 196],
[4, "frente", 196],
[5, "frente", 196]
], uniqueCols = [1]) {
const uniqueData = arr.filter((currentRow, i, self) => {
return i === self.findIndex((t) => {
return uniqueCols.every((col) => t[col] === currentRow[col])
})
});
return uniqueData;
}
console.log(getUniqueData())
function getUniqueData(arr = [
[4, "frente", 196],
[4, "frente", 196],
[5, "frente", 196]
], uniqueCols = [0,1]) {
const uniqueData = arr.filter((currentRow, i, self) => {
return i === self.findIndex((t) => {
return uniqueCols.every((col) => t[col] === currentRow[col])
})
});
return uniqueData;
}
console.log(getUniqueData())