一、let 特点
1、声明的变量是局部作用域
2、变量不会提升
3、不能重复声明变量
二、const 特点
1、声明的变量是局部作用域
2、变量不会提升
3、不能重复声明变量
4、只声明常量,不可修改变量
三、模板字符串“` `”
let a='hello';
let b=`${a} word`;
四、箭头函数
let add = (x)=>{
return x;
}
// let add = x => x;第一个x为传入的参数,第二个x想到于 return x; 返回值
console.log(add(20));
ES5中函数与箭头函数this的指向问题?
ES5中,函数被谁调用this就指向谁;箭头函数中this则指向的是当前调用该函数上文关系中的父对象。
let person = {
name:'Jsom',
add:function(){
console.log(this); // 这里的this指向当前对象,及 person 对象
console.log(this.name); // 所以这里会输出 Jsom
},
edit(){
// 这种方法声明是上面方法的简写
console.log(this); // 这里的this指向当前对象,及 person 对象
console.log(this.name); // 所以这里会输出 Jsom
}
}
person.add();
person.edit();
let person = {
name:'Jsom',
add:() => {
console.log(this); // 这里this指向的是 person 对象的父对象(这里指向的是window对象)
console.log(this.name); // window中没有name属性,所以没有输出
}
}
person.add();
五、class 声明对象
class Vue{
// 声明构造函数
constructor(name='Jsom',age='18'){
this.name = name;
this.age = age;
}
show(){
console.log(this.name)
}
}
let v = Vue();
v.show() // 输出 Jsom