let与const
let:
- 局部作用域
- 不能重复声明
- 不会变量提升
const
- 局部作用域
- 不能重复声明
- 不会变量提升
- 声明必须赋值
- 声明后不能修改
- 建议变量名大写
解构
解构:把对象或数组解析为单独的变量
数组用 , 分割;剩余的用 ... ;给默认值; 有顺序的
例如:let[a,,b,,c,d=10,...res]=arr;
对象解构
变量名和对象的键名保持一致 无序的
例如:let[age ,name,eye=2]=obj;
字符串
字符串模板
`` 包裹字符串,${变量}
特点:语义清晰,可以包含特殊字符串;保留换行
字符串检测
indludes是否包含
startWith是否包含开头
endsWith是否结尾包含
字符串方法
repeat(n)把字符串重复n次
padStart(len,sub)把字符串用n填充len长度
padEnd(len,sub)从后开始填充
函数
箭头函数
1.=> 前是参数,=>后是执行语句,返回值
2.参数如果不是一个,需要用()包括
3.执行语句如果不是一个用{}包括
4.返回值如果是对象字面量形势,用()包括
5.箭头函数中的this ,指向函数上一层作用域的this
var obj = {
name:"abcd",
age:18,
say:function(){
window.setInterval(()=>{
console.log(`我的名字是${this.name}今年${obj.age}岁`);
this.age++;
},2000)
}
}
obj.say()
默认参数
function(a=10){ }
不定参数
function(...arg){ }
扩展参数
调用参数时,把数组扩展后当参数传递
fn(...arr)