1.set的应用(去重)js标准内置对象
适用范围:String,Array(数字基本数据类型不可以)
set的方法:例子 var s = new Set(data)
- 增加: s.add(data) 和Array.push()一样
- 长度: s.size 和Array.length一样
- 删除: s.delete(data)
- 判断: s.has(data) 和Array.includes()一样
作用:去重,并且返回一个set特定的数据格式
转化格式:set和nodeList(queryselectorAll)都是看起来像数组的数据
var a = Array.from(data) 可以将其转化为真正的数组(此方法可以把类数组转化为数组,浅拷贝)
2.let与const
- let与const都只能声明一个变量一次(不能重复声明)
- let和const的作用域只在花括号内(块级作用域)
for (let i = 0; i < 3; i++) { log(i) } log(i) // 结果是 undefined
- const声明一个不可被赋值的变量(声明一个不希望被任何人修改的变量)
const a = 3 a = 4 // 报错 不能被修改 let a = 3 a = 4 //不报错
3.js标准内置对象Map
定义:Map
对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。
区别:和Object的区别就是它的key不必必须是字符串。可以是任何值
方法:var a = new Map()
- 增加 s.set("name", "zhang") 和object.name = "zhang"一样
- 拿到值 s.get("name") 和object.name一样
4.扩展符号(...传参数) 5数组解包
var a = [1, 2, 3] log(...a) // 1 2 3 可以把数组解开成单独元素 // 一行代码 多个赋值 var [a, b] = [1, 2] // 一行代码交换变量值 [a, b] = [b, a] //数组解包加上扩展符号 [a,...b] =[1,2,3,4,5] //传参用上扩展符号 function c(a, ...b) {} c(1,2,3,4,4) //a = 1 b = [2,3,4,4]
6.对象解包
var obj = {name:"1",score:"2"} var {name,score} = obj //后面就可以访问到 name和score
对象增强模式
name = "zhang " var a = {name}//当要赋值的key与外界的变量重名,可以省略velue值
7.默认参数值,可变参数传值
//传参用上扩展符号 function c(a, ...b) {} c(1,2,3,4,4) //a = 1 b = [2,3,4,4]
8.箭头函数
(参数)=>{语句}
9.新增方法includes
10.新增遍历方式
原文地址:https://www.cnblogs.com/-constructor/p/11747065.html
时间: 2024-11-12 19:26:39