**1.let:**用于声明变量;不能重复声明;块状作用域;使用let声明的变量不属于顶层对象(window);不能进行变量提升
2.const:用于声明常量;声明的常量用大写;常量不能修改;块状作用域;使用const声明的常量不属于顶层对象(window)
3、数组新操作
3.1合并数组
let a = [1,1,1]
let b = [2,2,2]
let c = [3,3,3]
let arr = [...a, ...b, ...c]
3.2复制数组操作(相当于深拷贝)
let arr1 = [1,2,3,4]
let arr = [...arr1]
3.3过滤出数组中符合条件的元素
let arr = [2,34,1,-1,23,54,-10]
let arr1 = arr.fliter(function(item, index){
// 返回大于0的数组元素(返回新数组)
return item > 0
})
3.4map返回计算之后的值
// 返回数组元素乘2的数组(返回新数组)
let arr1 = arr.map(function(item, index){
return item * 2
})
4.函数新特征
4.1箭头函数:为了简化回调函数的写法
若要执行多条语句则需要加花括号,必须写return
例:求两个数的和
let sum = (sum1, sum2) => num1 + num2;
console.log(sum(1,4))
// 相当于
function sum (sum1, sum2){
return sum1 + sum2
}
5.字符串新操作
5.1重复字符串
// 将此字符串重复3次
console.log("123".repeat(3))
5.2补全字符串
let str = "go home"
// 使用*将str字符串补全20个长度(在前面)
// padEnd在后面补全
console.log(str.padStart(20, "*"))
5.3是否包含某个字符串
str.includes()
5.4是否以某个字符串开头或结尾
str.startsWith() str.endsWith()
6.promise
作用:防止发生回调地狱,增强代码的可读性
新增的三个遍历
Foreach用来遍历数组,为数组的每一个元素执行一次提供的函数(不能使用return、break否则返回的都是undefined)
Forin循环遍历的值都是数据结构的键值,总结一句话来说就是forin可以循环数组,但是特别适合遍历对象
forof纯属组与类数组集合均可遍历