给下面的数组去重,使用js语言key = [2,2,3,3,5,5,5A,5A,15A,15A,15,15]
时间: 2023-08-19 21:50:11 浏览: 38
你可以使用Set来快速实现数组去重。Set是ES6中引入的一种数据结构,它只会存储唯一的值。以下是使用Set进行数组去重的代码示例:
```javascript
let key = [2, 2, 3, 3, 5, 5, '5A', '5A', '15A', '15A', 15, 15];
let uniqueKey = [...new Set(key)];
console.log(uniqueKey);
```
运行以上代码,输出结果为:[2, 3, 5, "5A", "15A", 15]。
在代码中,我们先创建了一个Set对象,利用Set的特性将数组中的重复元素去除。然后使用扩展运算符(...)将Set对象转换回数组,得到去重后的数组uniqueKey。最后,通过console.log打印结果。
需要注意的是,Set对象存储的是唯一值,所以在去重过程中,数字类型和字符串类型是不会被视为重复的。所以在给定的数组中,数字2和字符串'2'不会被视为重复元素。
相关问题
数组去重 例如:var arr = [1,2,3,4,5,3,4,6,8,1] 编写程序去除数组内重复的值得到如下结果 arr = [1,2,3,4,5,6,8]
有多种方法可以实现数组去重。其中一种方法是利用ES6的Set数据结构。可以创建一个空的Set对象,遍历需要去重的数组,将每一个元素添加到Set中。由于Set中不会存在相同的元素,所以最终得到的结果就是去重后的数组。下面是一个示例代码:
```
function unique(arr) {
return Array.from(new Set(arr));
}
var arr = [1,2,3,4,5,3,4,6,8,1];
arr = unique(arr);
console.log(arr); //[1,2,3,4,5,6,8]
```
另一种方法是利用reduce函数。可以创建一个空的Map数据结构,遍历需要去重的数组,将数组的每一个元素作为key存储到Map中。由于Map中不会出现相同的key值,最终得到的就是去重后的结果。下面是一个示例代码:
```
function unique(arr) {
return arr.reduce((prev,cur) => prev.includes(cur) ? prev : [...prev,cur],[]);
}
var arr = [1,2,3,4,5,3,4,6,8,1];
arr = unique(arr);
console.log(arr); //[1,2,3,4,5,6,8]
```
以上是两种常用的数组去重方法,你可以根据自己的需求选择其中一种来使用。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [JavaScript数组去重(12种方法,史上最全)](https://blog.csdn.net/weixin_34378045/article/details/88737041)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
vue3 数组去重 new set
在 Vue3 中,可以使用 ES6 中的 Set 类型来进行数组去重。Set 是一种无序且不重复的集合,可以将一个数组转换为 Set,然后再将 Set 转换回数组即可实现去重。下面是示例代码:
```javascript
const arr = [1, 2, 2, 3, 4, 4, 5];
// 将数组转换为 Set
const set = new Set(arr);
// 将 Set 转换为数组
const newArr = Array.from(set);
console.log(newArr); // [1, 2, 3, 4, 5]
```
另外,Vue3 还提供了一个数组去重的内置指令 `v-for`,可以在 `v-for` 循环中使用 `v-if` 条件语句进行去重:
```html
<template>
<div>
<ul>
<li v-for="(item, index) in uniqueList" :key="index">{{ item }}</li>
</ul>
</div>
</template>
<script>
export default {
data() {
return {
list: [1, 2, 2, 3, 4, 4, 5],
};
},
computed: {
uniqueList() {
return [...new Set(this.list)];
},
},
};
</script>
```
这里使用了计算属性 `uniqueList` 来返回去重后的数组。在模板中使用 `v-for` 循环时,只需要循环 `uniqueList` 即可。