ES6新增语法
1》let 用于新增变量语法,防止循环变量变成全局变量
特点:只在所处于块级作用域有效,var时不具备这个块级特点
不存在变量提升(先申明在使用)
2》const 申明常量,常量就是值(内存地址)不能变化的值
特点:具有块级作用域,不存在变量提示
申明变量时必须赋值
复杂数据类型(数值)可以根据索引来重新改变元素的值
(对象)改变元素的值
3》解构赋值
从数组中提取值,按照相应位置,对变量赋值
对象也可以实行解构 [] 等号的左边 {} 等号的左边
结构不成功,返回值为undefined
4》箭头函数 => 代表function
如果函数只有一行代码可以简写{} return
var sun = (x,y) => x+y
如果函数只有一个参数,可以简写()
var num = x =>x*x
5》箭头函数的this指向
不绑定this关键字,箭头函数中的this指向的是函数定义位置的上下域this
没有全局变量会追溯到windo对象 返回值为undefined
6》剩余参数 rest
剩余参数语法允许我们将一个不定数量的参数表示为一个数组
一个形参接收多个实参
在数组变量名前加... (3个点)
必须是最后一个形参
剩余参数可以与解构赋值搭配使用
7》扩展运算符
将数组或者对象转为用逗号分隔的参数序列
在变量名前加... (三个点 )
可用于合并数组
8》Array.from
构造函数方法,将伪数组转换为数组
数组进行遍历 Array.from('数组名''回调函数(item ,index)')
item值 index 索引
9》find()
找出第一个符合条件的数组成员,参数是一个回调函数,返回值为true的成员
没有则undefined
数组名.find(回调函数 参数('循环值'' 索引')
var a = arr.find(item => item > 50);
10》findIndex()
返回第一个符合条件的数组成员的位置,没有则-1
数组名.findIndex(回调函数 参数('循环值' '索引’)
var a = arr1.findIndex(item => item > 50);
11》includes()
表示某个数组是否包含指定的值,返回值为布尔值
[1,2,3] includes(2) true
[1,2,3] includes(4) false
数组名.includes('查找的元素')
12》模板字符串
申明字符串·· 反引号
可以解析变量 $( 变量名 )
模板字符串是可以换行的
模板字符串调用函数 $(调用的函数名)
13》starsWith()
数组名.starsWith(判断的字符串)
表示参数字符串是否以该字符串的开头,返回值为布尔值
14》endsWith()
数组名.endsWith()
表示参数字符串是否以该字符串为结尾,返回值为布尔型
15》repeat()
数组名.repeat(重复的次数)
返回一个新字符串,表示将原字符串重复n次
参数为小数,会被取整
Set 数据解构
new Set()
类似于数组,但是成员的值都是唯一的,没有重复
可以利用扩展运算符给数组去重
实例方法
1》add(value)添加某个值,返回Set的本身
2》deleat(value)删除某个值,返回一个布尔型,表示是否删除成功
3》has(value)判断数组是否有这个值,返回值为布尔值
4》clear(value)清空Set数据结构中的值,没有返回值
遍历Set
与数组一样,拥有forEach,没有返回值
const s1 = new Str([1,2,3,4])
s1.forEach (value) =>
console.log(value)
Set的属性
变量名.size(数据结构中有几个元素) |
|