1、箭头函数 this
1.不带参数 var test = function(){ return 'test'; } test() //结果是:'test' 等价于 let test = ()=>test; test(); //结果是:'test' 2.带参数 var test = function(x){ return x; } test(111); //结果是: 111 等价于 let test = x => x; test(222); //结果是: 222 3.数组循环 let n = [1,3,5,7,10]; let m = []; n.forEach( v => { if ( v % 5 === 0) { m.push(v); } }) console.log(m); // 结果是: [5, 10] 4.箭头函数中的 this 指的不是window,是对象自己 function test (){ let a = 1; setTimeout(() => { this.a++; console.log(a); }, 1000) } test(); // 结果是: 1
2、let 和 const
let 和 const 只在最近的一个块中(花括号中)有效 const 用来声明一个常量,但也并不是一成不变的 var a = 1; { let a = 2; console.log(a); // 结果 :2 } console.log(a); // 结果: 1 const obj = [1,3]; obj.push = 4; console.log(obj); // [1, 3, push: 4] obj = 666; // 报错
3、class 类
class Animal { constructor(){ console.log('我是一个动物'); } } class Person extends Animal { constructor(){ super(); console.log('我是一个程序员'); } } let aa = new Person();