数据结构(集合)
一、冒泡法比较大小
let F68 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; for (let i = 1; i < F68.length; i++) { for (let j = 0; j < F68.length - i; j++) { if (F68[j] > F68[j + 1]) { [F68[j], F68[j + 1]] = [F68[j + 1], F68[j]]; } } } console.log(F68);
二、排序法比较大小
let F68 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; for (let i = 0; i < F68.length - 1; i++) { for (let j = i + 1; j < F68.length; j++) { if (F68[i] < F68[j]) { [F68[i], F68[j]] = [F68[j], F68[i]]; } } } console.log(F68);
三、常用排序法
let F68=[56,564,465,465,456,465,4654,64]; let F69=F68.sort((a,b)=>b-a); console.log(F69);
四、扩展运算符
书写方式:吧字符串的每个字符拿出来单独组成数组
let str = "ABC"; let F68 = [...str]; console.log(F68); //['A','B',C]
五、字符串转数组
split("")
小括号里是分割字符串的标识,标识的前后是数组的值。如果小括号里没有内容,标识字符串的每个字符都转换成数组的值。
let str="2021-1-1"; let F68=str.split("-"); console.log(F68); //['2021','1‘,'1']
六、数组转字符串
join
let F68 = [1, 2, 3]; let str = F68.join(); console.log(typeof str, str); //string 1,2,3
七、数组.concat(添加内容)
添加的内容可以是数组也可以是内容
let F68 = [1, 2, 3]; let F69 = [4, 5, 6]; F68 = F68.concat(F69); console.log(F68);
八、数据结构 Set(集合)
可以储存多个值,但是不能重复,重复的判断条件是全等
let F68 = new Set(); F68.add(true); F68.add(1); F68.add(true); F68.add("1"); F68.add(1); console.log(F68); //Set { true, 1, '1' }
九、集合的属性和方法
属性 -------> console.log(F68.size);
方法:
let F68 = new Set(); F68.add(1).add(true).add("A").add(undefined); console.log(F68); console.log(F68.size); //属性 F68.delete("A"); //直接写需要删除的值 console.log(F68); //{1,true,undefined}
遍历集合
补充:给数组去重
let arr = [1, 1, 2, 2, 3, 3, 4, 4, 5, 5]; // 数组转集合 let F68 = new Set(arr); // 集合转数组 arr = Array.from(F68); console.log(arr);
十、交集、并集、差集
let set1 = new Set([1, 2, 3, 2]); let set2 = new Set([3, 4, 5]); let intersect = [...set1].filter(item => set2.has(item)); console.log(intersect); //3 (交集)
let intersect = [...set1].filter(item => !set22.has(item)); console.log(intersect); //(差集)
let union = new Set([...set1, ...set2]); console.log(union); //(并集)