沙田镇网站建设,网站开发工程师心得总结,seo外包多少钱,长沙招聘集合#xff08;Set#xff09;
集合是元素的集合#xff0c;只能包含唯一元素
创建一个空集合
const companies new Set()
console.log(companies)Set(0) {}从数组创建集合
const languages [英语,芬兰语,英语,法语,西班牙语,英语,法语,
]const setOfLanguages new …集合Set
集合是元素的集合只能包含唯一元素
创建一个空集合
const companies new Set()
console.log(companies)Set(0) {}从数组创建集合
const languages [英语,芬兰语,英语,法语,西班牙语,英语,法语,
]const setOfLanguages new Set(languages)
console.log(setOfLanguages)Set(4) {英语, 芬兰语, 法语, 西班牙语}集合是可迭代对象我们可以迭代每个元素。
const languages [英语,芬兰语,英语,法语,西班牙语,英语,法语,
]const setOfLanguages new Set(languages)for (const language of setOfLanguages) {console.log(language)
}英语芬兰语法语西班牙语向集合添加元素
const companies new Set() // 创建一个空集合
console.log(companies.size) // 0companies.add(谷歌) // 向集合添加元素
companies.add(脸书)
companies.add(亚马逊)
companies.add(甲骨文)
companies.add(微软)
console.log(companies.size) // 集合中5个元素
console.log(companies)Set(5) {谷歌, 脸书, 亚马逊, 甲骨文, 微软}我们也可以使用循环向集合添加元素。
const companies [谷歌, 脸书, 亚马逊, 甲骨文, 微软]
setOfCompanies new Set()
for (const company of companies) {setOfCompanies.add(company)
}Set(5) {谷歌, 脸书, 亚马逊, 甲骨文, 微软}从集合中删除元素
我们可以使用 delete 方法从集合中删除元素。
console.log(companies.delete(谷歌))
console.log(companies.size) // 剩下4个元素检查集合中是否有元素
has 方法可以帮助我们检查某个元素是否存在于集合中。
console.log(companies.has(苹果)) // false
console.log(companies.has(脸书)) // true清空集合
这将移除集合中的所有元素。
companies.clear()
console.log(companies)Set(0) {}下面的例子展示了如何使用集合。
const languages [英语,芬兰语,英语,法语,西班牙语,英语,法语,
]
const langSet new Set(languages)
console.log(langSet) // Set(4) {英语, 芬兰语, 法语, 西班牙语}
console.log(langSet.size) // 4const counts []
const count {}for (const l of langSet) {const filteredLang languages.filter((lng) lng l)console.log(filteredLang) // [英语, 英语, 英语]counts.push({ lang: l, count: filteredLang.length })
}
console.log(counts)[{ lang: 英语, count: 3 },{ lang: 芬兰语, count: 1 },{ lang: 法语, count: 2 },{ lang: 西班牙语, count: 1 },
]集合的另一个用法是计算数组中的唯一项。
const numbers [5, 3, 2, 5, 5, 9, 4, 5]
const setOfNumbers new Set(numbers)console.log(setOfNumbers)Set(5) {5, 3, 2, 9, 4}集合的并集
可以使用扩展运算符来找到两个集合的并集。让我们找出集合 A 和集合 B 的并集A U B。
let a [1, 2, 3, 4, 5]
let b [3, 4, 5, 6]
let c [...a, ...b]let A new Set(a)
let B new Set(b)
let C new Set(c)console.log(C)Set(6) {1, 2, 3, 4, 5, 6}集合的交集
可以使用 filter 方法找到两个集合的交集。让我们找出集合 A 和集合 B 的交集A ∩ B。
let a [1, 2, 3, 4, 5]
let b [3, 4, 5, 6]let A new Set(a)
let B new Set(b)let c a.filter((num) B.has(num))
let C new Set(c)console.log(C)Set(3) {3, 4, 5}集合的差集
可以使用 filter 方法找到两个集合之间的差集。让我们找出集合 A 和集合 B 的差集A \ B。
let a [1, 2, 3, 4, 5]
let b [3, 4, 5, 6]let A new Set(a)
let B new Set(b)let c a.filter((num) !B.has(num))
let C new Set(c)console.log(C)Set(2) {1, 2}映射Map
创建一个空映射
const map new Map()
console.log(map)Map(0) {}从数组创建映射
countries [[芬兰, 赫尔辛基],[瑞典, 斯德哥尔摩],[挪威, 奥斯陆],
]
const map new Map(countries)
console.log(map)
console.log(map.size)Map(3) {芬兰 赫尔辛基, 瑞典 斯德哥尔摩, 挪威 奥斯陆}
3向映射添加值
const countriesMap new Map()
console.log(countriesMap.size) // 0
countriesMap.set(芬兰, 赫尔辛基)
countriesMap.set(瑞典, 斯德哥尔摩)
countriesMap.set(挪威, 奥斯陆)
console.log(countriesMap)
console.log(countriesMap.size)Map(3) {芬兰 赫尔辛基, 瑞典 斯德哥尔摩, 挪威 奥斯陆}
3从映射中获取值
console.log(countriesMap.get(芬兰))赫尔辛基检查映射中的键
使用 has 方法检查映射中是否存在某个键。返回 true 或 false。
console.log(countriesMap.has(芬兰))true通过循环获取映射中的所有值。
for (const country of countriesMap) {console.log(country)
}(2) [芬兰, 赫尔辛基]
(2) [瑞典, 斯德哥尔摩]
(2) [挪威, 奥斯陆]for (const [country, city] of countriesMap) {console.log(country, city)
}芬兰 赫尔辛基
瑞典 斯德哥尔摩
挪威 奥斯陆