一、let&const
let:
在es5中,var声明变量的作用域:函数级作用域
1.作用域变化;块级作用域
2.let不存在变量提升
const:常量
1.const声明一个只读的常量。一旦声明,常量的值就不能改变。
二、value
变量的解构赋值
1.数组的解构赋值
2.默认值
3.对象的解构赋值
4.字符串的解构赋值
length
5.函数的参数的解构赋值
三、string
1.字符的Unicode表示法
2.codePointAt()
3.String.fromCodePoint()用于从码点返回对应字符
4.字符串的遍历器接口 for of
5.at()返回字符串给定位置的字符
6includes():返回布尔值,表示是否找到了参数字符串。
startsWith():返回布尔值,表示参数字符串是否在源字符串的头部。
endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部。
7.repeat()方法返回一个新字符串,表示将原字符串重复n次
8.padStart(),padEnd()
一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。
9.模板字符串
$('#result').append(`
There are <b>${basket.count}</b> items
in your basket, <em>${basket.onSale}</em>
are on sale!
`);
四、array
1.Array.from:类数组的对象直接转化成数组
2.Array.of:用于将一组值,转换为数组。
3.数组实例的copyWithin()
target(必需):从该位置开始替换数据。
start(可选):从该位置开始读取数据,默认为0。如果为负值,表示倒数。
end(可选):到该位置前停止读取数据,默认等于数组长度。如果为负值,表示倒数。
4.数组实例的find()和findIndex()
find方法,用于找出第一个符合条件的数组成员。直到找出第一个返回值为true的成员,如果没有符合条件的成员,则返回undefined
findIndex方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1。
5.数组实例的fill()
使用给定值,填充一个数组。
6.数组实例的entries(),keys()和values()
用于遍历数组
keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍历。
五、function
1.基本用法
2.函数的length属性:如果参数被初始化了,将不计算在length中
3.rest参数
注意,rest参数之后不能再有其他参数(即只能是最后一个参数),否则会报错
4. ...可以用来代替apply
Math.min.apply(null,arr);
Math.min(...arr)
5.严格模式:http://www.iwen.wiki/blog/2016/11/04/es5%E8%A7%84%E8%8C%83%E4%B9%8B%E4%B8%A5%E6%A0%BC%E6%A8%A1%E5%BC%8F/
6.箭头模式:
1.返回值+参数
2.不带参数
六、set&map
Set函数可以接受一个数组(或类似数组的对象)作为参数,用来初始化
1.Set结构的实例有以下属性。
Set.prototype.constructor:构造函数,默认就是Set函数。
Set.prototype.size:返回Set实例的成员总数。
2.Set实例的方法分为两大类:操作方法(用于操作数据)和遍历方法(用于遍历成员)。下面先介绍四个操作方法。
add(value):添加某个值,返回Set结构本身。
delete(value):删除某个值,返回一个布尔值,表示删除是否成功。
has(value):返回一个布尔值,表示该值是否为Set的成员。
clear():清除所有成员,没有返回值。
3.Set结构的实例有四个遍历方法,可以用于遍历成员。
keys():返回键名的遍历器
values():返回键值的遍历器
entries():返回键值对的遍历器
forEach():使用回调函数遍历每个成员