如何删除数组 javascript 中的重复值?
How to remove duplicate value in array javascript?
我有这样的数据:
data = [
{
"emp_id": 1,
"hashtag_id": [
1,
3,
3,
4,
2,
2,
1,
1
]
},
{
"emp_id": 2,
"hashtag_id": [
1,
1
]
},
{
"emp_id": 3,
"hashtag_id": [
3,
1
]
},
{
"emp_id": 4,
"hashtag_id": [
1,
3,
4
]
},
{
"emp_id": 5,
"hashtag_id": 1
},
{
"emp_id": 6,
"hashtag_id": [
1,
4
]
}
]
我想删除 hashtag_id
中的重复值(如果存在)。
这是我所期望的:
data = [
{
"emp_id": 1,
"hashtag_id": [
1,
3,
4,
2,
]
},
{
"emp_id": 2,
"hashtag_id": [
1
]
},
{
"emp_id": 3,
"hashtag_id": [
3,
1
]
},
{
"emp_id": 4,
"hashtag_id": [
1,
3,
4
]
},
{
"emp_id": 5,
"hashtag_id": 1
},
{
"emp_id": 6,
"hashtag_id": [
1,
4
]
}
]
我正在尝试这个:
data = data.map(item => {
item.hashtag_id = [...new Set(item.hashtag_id)]
return item
})
但出现错误:
"number 1 is not iterable (cannot read property Symbol(Symbol.iterator))"
这有什么问题吗?
如果还不够,请告诉我是否需要更多信息来解决该问题
在最后一项中,hashtag_id
是一个数字而不是数字数组。由于数字不是可迭代的,因此您不能对其进行 Set 导致错误。
要考虑 hashtag_id
是数字的可能性,请执行以下操作:
data = data.map((item) => {
item.hashtag_id = Array.isArray(item.hashtag_id) ? [...new Set(item.hashtag_id)] : item.hashtag_id;
return item;
})
我有这样的数据:
data = [
{
"emp_id": 1,
"hashtag_id": [
1,
3,
3,
4,
2,
2,
1,
1
]
},
{
"emp_id": 2,
"hashtag_id": [
1,
1
]
},
{
"emp_id": 3,
"hashtag_id": [
3,
1
]
},
{
"emp_id": 4,
"hashtag_id": [
1,
3,
4
]
},
{
"emp_id": 5,
"hashtag_id": 1
},
{
"emp_id": 6,
"hashtag_id": [
1,
4
]
}
]
我想删除 hashtag_id
中的重复值(如果存在)。
这是我所期望的:
data = [
{
"emp_id": 1,
"hashtag_id": [
1,
3,
4,
2,
]
},
{
"emp_id": 2,
"hashtag_id": [
1
]
},
{
"emp_id": 3,
"hashtag_id": [
3,
1
]
},
{
"emp_id": 4,
"hashtag_id": [
1,
3,
4
]
},
{
"emp_id": 5,
"hashtag_id": 1
},
{
"emp_id": 6,
"hashtag_id": [
1,
4
]
}
]
我正在尝试这个:
data = data.map(item => {
item.hashtag_id = [...new Set(item.hashtag_id)]
return item
})
但出现错误:
"number 1 is not iterable (cannot read property Symbol(Symbol.iterator))"
这有什么问题吗?
如果还不够,请告诉我是否需要更多信息来解决该问题
在最后一项中,hashtag_id
是一个数字而不是数字数组。由于数字不是可迭代的,因此您不能对其进行 Set 导致错误。
要考虑 hashtag_id
是数字的可能性,请执行以下操作:
data = data.map((item) => {
item.hashtag_id = Array.isArray(item.hashtag_id) ? [...new Set(item.hashtag_id)] : item.hashtag_id;
return item;
})