上午
1.ES6严格模式在那些方面
2.默认参数,【记住常用 if语句用的多】下面箭头函数有写
3.字符串模版 【支持换行,可以直接写DOM结构】
4.块级作用域 let const声明、块级作用域特点
5、箭头函数语法及省略
语法:function省略 使用=>
6.数组解构赋值【一一对应】及省略
7.对象解构赋值【属性】及省略
8.扩展解构【聚合】【散开】
遗忘:arguments【重要】
const add = (...arg)=>{
console.log(arg);
}
add(1,2,3); // Array(3)
1、ES6严格模式 如何开启呢?使用 ‘use strict’;
1)声明变量不能省略var ,必须使用【关键字】
2)函数调用建议加上【函数】的【所有者】window.fn()
3)重名错误(【不允许同名形参】存在)add(num1,num2,num2) ×
2、函数的高可用:默认参数
3、字符串模版:
语法:${}
1)解析变量
2)支持换行,可以让我们直接使用DOM结构
4、全局作用域 局部作用域
1)块级作用域:任何一对()或者{}的语句都属于一个块,在这之中定义的所有变量在快外都是不可见的
let 声明【块级变量】 类似var
const 声明【常量】并且必须赋值 const data =100; 一次赋值机会
块级作用域特点:
1)不允许重名
2)块级作用域不存在变量提升 预解析
3)不会在window下面挂属性
5、箭头函数语法及省略
// 箭头函数就是把【function去掉】 使用=>
var add = (x = 0, y = 0) => {
//加上默认参数
console.log(x + y);
return x + y;
}
add(5);
// 省略只有一个参数,【小括号可以省略】
var add = x => {
console.log(x);
return x;
}
add(100);
// 省略 函数体自有一行 【{}可以省略】 自带return 不需要写
var add = (x, y) => console.log(x + y); add(9, 9);
6.数组解构赋值
// 【数组解构赋值】 一一对应
var [a, b, [c]] = [1, 2, [9]];
console.log(a, b, [c]);
7.对象解构赋值【属性】
// 对象解构
var obj = {
name:'王五',
age:18
}
var {
name} = obj; //补充:当对象的属性跟属性值重名的话 可以省略属性名
console.log(name);
8.扩展解构【聚合】【散开】
// 【聚合】【散开】
var arr =[1,2,3];
// 1、复制数组 【聚合】
var arr1=[...arr];
console.log(arr1); // [1, 2, 3]
// 2、合并数组 【聚合】
var arr =[1,2,3];
var arr2 =[4,5,6];
var arr3 = [...arr,...arr2];
console.log(arr3); //[1, 2, 3, 4, 5, 6]
// 3、求最大值 【散开】
var arr4 = [1,2,9,333,77];
var max = Math.max(...arr4);
console.log(max); //333
下午、
1、set新的数组对象
var s = new Set([1,2,3]);
和数组区别 ,不能通过索引获取值,但是可以遍历
如何添加新的数呢?s.add(4)
获取数组长度: s.size
判断有没有 s.has(2) 有没有数字2
set不接收重复的数字 可以确保自己唯一性【可以用来数组去重】
两个空对象是不相等的 比较的是地址
2、map是对象的增强版
对象的属性名【键名】只能是字符串,而map【键名可以是字符串 也可以不是】
赋值set 获取是get
3、JSON不是ES6里面的
2种方式访问
obj.name
obj [‘name’]
JSON对象又叫键值对 JSON规定键名必须使用双引号 单引号都不行
前后端交互 用的就是字符串 所以我们需要转来转去
前端给到后端是一个JSON字符串
JSON数据
JSON.parse 字符串转对象
JSON.str 对象转字符串
4、正则表达式
作用:字符串查找、替换、检测等操作
正则内容:
数字集合: [0-9] 0-9中任意数字 或者(0|1)
字母几个[a-zA-Z] 任意字母
特殊字符
字符串方法使用正则 replace
match 获取匹配数组
search 获取匹配数组
正则方法
test
exec等同于match