1、变量定义
- var会成为全局变量
- let是局部变量
- const是常量
2、字符串扩展函数:includes(),startsWith(),endsWith()
3、`` esc键下方的符号,代表字符串模板标记,中间的值即使换行或者js脚本还是其他的都解析为字符串的值
4、解构,自动jie对应上值,也可以在解构时指定解构后的变量,如第二个例子
let arr=[1,2,3];
let [x,y,z] = arr;
console.log(x,y,z);
let person={"name":"lin","age":"24"};
let {name:n,age}=person;
5、函数
- 可指定默认值,如function fun(b=1){}
- 箭头函数
function(a,b){return ''}
可以写成 (a,b)=>return '';
或 (a,b)=>{return ''}
- 对象函数属性简写
let person = {
name: "jack",
// 以前:
eat: function (food) {
console.log(this.name + "在吃" + food);
},
// 箭头函数版:
eat2: food => console.log(person.name + "在吃" + food),// 这里拿不到this
// 简写版:
eat3(food){
console.log(this.name + "在吃" + food);
}
}
6、数组
- map 是遍历处理后返回新数组
let arr = [1,2];
let newArr = arr.map(item => {return item})
扩展方法:
- find(callback):把数组中的元素逐个传递给函数callback执行,如果返回true,则返回该元素
- findIndex(callback):与find类似,不过返回的是品牌到的元素的索引
- includes(callback):与find类似,如果匹配到元素,则返回true,代表找到了。
7、模块化
- export对外接口,不管函数、变量、数组、对象都可以
- import引入接口
- default 如果用default修饰的export内容,import时则可以任意自定义名字
8、对象扩展
- keys(obj):获取对象的所有key形成的数组
- values(obj):获取对象的所有value形成的数组
- entries(obj):获取对象的所有key和value形成的二维数组。格式:
[[k1,v1],[k2,v2],...]
- assian(dest, ...src) :将多个src对象的值 拷贝到 dest中(浅拷贝)