webveuje/teaching/jwl/课件/es6/setmap.html
2021-04-09 16:36:34 +08:00

53 lines
1.8 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
// console.log(arr[2])
var arr1=[1,2,3,4,2,1]
// console.log(arr1[2])
var arr=new Set([1,2,3,4,2,1])
arr.add("pplo")
var you=arr.has(2)
// console.log(you)
arr.delete(1)
// console.log(arr) //[1,2,3,4]
function clearall(){
arr.clear()
console.log(arr,"drop")
}
// set的遍历 因为set类型不能用 索引访问 而且他属于iterable类型 所有属于iterable类型的都能用for of遍历
// set遍历是可以用for of的
// for(let i of arr){
// console.log(i)
// }
// set和数组的区别
// 1. set数据结构会过滤掉重复的元素
// 2. set不能按照数组的索引值直接获取 数组能按照索引值获取值
// 3.数组的创建方式有很多种但是set数据结构的创建方式只有一种 这个创建方式就是 new Set
// console.log(arr.size)
let arrs=Array.from(arr)
// console.log(arrs)
// console.log(arrs[2])
// map : 它类似于对象也是键值对的集合但是“键”的范围不限于字符串各种类型的值包括对象都可以当作键。也就是说Object 结构提供了“字符串—值”的对应Map 结构提供了“值—值”的对应,
var map1=new Map()
var obj={name:"asd"}
map1.set(obj,"这是值")
console.log(map1)
</script>
</head>
<body>
<button onclick="clearall()">清空</button>
</body>
</html>