查找数组中的所有唯一值,而不是拆分它和 return 其他东西
Find all unique values in array and than split it and return something else
我的目标是在这个数组中找到所有唯一的年份,然后 return 将它作为一个数组。我几乎完成了,但无法弄清楚我将如何 return 拆分值。
function findUniqueYears() {
const arr = ['1973-11-01', '2001-01-01', '1999-10-01', '2007-10-01', '2016-06-01', '2005-08-01', '1973-09-01', '1979-12-01', '2001-08-01'];
for (var i = 0; i < arr.length; i++) {
for (var j = i + 1; j < arr.length; j++) {
if (arr[i].split("-")[0] === arr[j].split("-")[0]) {
arr.splice(j, 1);
}
}
}
console.log(arr)
}
应该这样做
const findUniqueYears = (arr) => Array.from(new Set(arr.map(item => item.split('-')[0])))
您可以使用函数 map 遍历数组中的每个元素,然后您可以轻松地将日期拆分为“-”return 0 值并将其转换为 Set。
function findUniqueYears() {
const arr = ['1973-11-01', '2001-01-01', '1999-10-01', '2007-10-01', '2016-06-01', '2005-08-01', '1973-09-01', '1979-12-01', '2001-08-01'];
return new Set(arr.map((el) => el.split('-')[0]))
}
我的目标是在这个数组中找到所有唯一的年份,然后 return 将它作为一个数组。我几乎完成了,但无法弄清楚我将如何 return 拆分值。
function findUniqueYears() {
const arr = ['1973-11-01', '2001-01-01', '1999-10-01', '2007-10-01', '2016-06-01', '2005-08-01', '1973-09-01', '1979-12-01', '2001-08-01'];
for (var i = 0; i < arr.length; i++) {
for (var j = i + 1; j < arr.length; j++) {
if (arr[i].split("-")[0] === arr[j].split("-")[0]) {
arr.splice(j, 1);
}
}
}
console.log(arr)
}
应该这样做
const findUniqueYears = (arr) => Array.from(new Set(arr.map(item => item.split('-')[0])))
您可以使用函数 map 遍历数组中的每个元素,然后您可以轻松地将日期拆分为“-”return 0 值并将其转换为 Set。
function findUniqueYears() {
const arr = ['1973-11-01', '2001-01-01', '1999-10-01', '2007-10-01', '2016-06-01', '2005-08-01', '1973-09-01', '1979-12-01', '2001-08-01'];
return new Set(arr.map((el) => el.split('-')[0]))
}