ECMAScript 6.0(以下簡稱 ES6)是 JavaScript 語言的下一代標準,已經在 2015 年 6 月正式發布了。它的目標,是使得 JavaScript 語言可以用來編寫復雜的大型應用程序,成為企業級開發語言。
1、let命令
基本用法
ES6 新增了let命令,用來聲明變量。它的用法類似于var,但是所聲明的變量,只在let命令所在的代碼塊內有效。
{
let x=10;
var y=20;
console.log(x,y);
}
console.log(x);//不可以打印,會報錯
console.log(y);//可以打印
這表明,let聲明的變量只在它所在的代碼塊有效。
2、const命令
基本用法
const聲明一個只讀的常量。一旦聲明,常量的值就不能改變。
//常量:不能被重復定義,再次定義會報錯 es6
const PI="3.14159";
console.log(PI);
3、模板字符串---${}包裹變量,``包裹模板
let name="王五";
let stres6=`姓名是${name}年齡是20`;
console.log(stres6);//姓名是王五年齡是20
4、es6定義對象
(1)es5寫法:
var myname="莉莉";
var pwd="123”;
var obj={
name:myname,
pwd:pwd
}
console.log(obj);
(2)es6寫法:
var myname="莉莉";
var pwd="123”;
var obj6={
myname,
pwd
}
console.log(obj6);
es5定義對象屬性和方法并調用
var Dog={
name:"妞妞",
sex:"母",
action:function(){
console.log("我愛吃骨頭");
}
}
//調用屬性
console.log(Dog.name);
//調用方法
Dog.action();
es6定義對象屬性和方法并調用--在方法的定義上簡化
var Dog={
name:"妞妞",
sex:"母",
action(){
console.log("我愛吃骨頭");
}
}
//調用屬性
console.log(Dog.name);
//調用方法
Dog.action();
5、箭頭函數
es6 :箭頭函數(自帶return)
//有參函數es5寫法
function test1(str){
return str;
}
console.log(test1("你好"));
//有參函數es6寫法
var test2=(str)=>str;
console.log(test2("你也好"));
//無參函數es5寫法
var test3=function(){
var str="哈哈";
return str;
}
console.log(test3());
//無參函數es6寫法
var test4=()=>{
var str="哈哈";
return str;
};
console.log(test4());
6、es6——this穿透
//this穿透
var objThis1={
name:"七寶",
age:22,
action:function(){
console.log(this);
}
}
objThis1.action();//es5 打印的就是這個對象
var objThis2={
name:"七寶",
age:22,
action:()=>{
console.log(this);
}
}
objThis2.action();//es6 this穿透到上一層 Window