ES6新增常用方法

2021-10-03 19:22:40 字數 3352 閱讀 3462

let區別1:

let定義的變數只能在**塊{}裡面使用,形成乙個{}塊級作用域

var作用於函式作用域

區別2:

let不允許重複宣告,它是乙個封閉空間,解決了i問題

var a=5

var a=12 //-->a=5

let a=5

let a=12 //-->error

區別3:

const

const用來定義常量,一旦定義了,後面就不能修改了

箭頭函式=>

*function()中this是指向呼叫這個函式的物件

1.左右兩邊結構一樣

2.右邊必須是合法結構(錯誤例子:)

3.宣告和賦值寫在一句話中(錯誤例子:let [a,b]; [a,b]=[12,5];)

//陣列

let [a,b,c]=[12,5,101] // a=12,b=5,c=101

//json

let = // json跟順序無關,a=12,b=5,c=101

//混合型,左右結構、順序一致

let [,[n1,n2,n3],num,str] = [,[12,5,8],8,'ecmascript']

//a=3,b=8,c is not defined    對陣列的解構

var [a,b]=[3,5,8];

//x=v,y=u,z=e    對字串的結構

var [x,y,z]=vue;

//m=10,n=20    物件的解構,對key進行拆分

var =;

var arr1=[1,2,3,4]

var arr2=

for(var i=0;i

//其中也可以有key、value不相同的

let a=12;

let b=5;

let json=;  //

console.log(json);  //

//json裡的方法簡寫,`:function`可以省略

let json=

}

`string text $ string text`
var [x,...y]=[4,8,10,30]  //x=4,y=[8,10,30]  y成了動態引數

let xy=[...'es6'];  //['e','s','6']  拆解

//陣列拆分

console.log(...[4,8])  //4,8

//陣列拆分的高階

let arr1 =[1,3];let arr2=[4,8];

[...arr1,...arr2]  //[1,3,4,8]

function show(a,b=5,c=12)

show(99,19)    //99,19,12

show(99)    //99,5,12

//for in

for(var i in arr)

//for of

for(var i of arr)

for of可以迴圈陣列,但是不能迴圈json,因為它是為了與map配合使用

var map = new map();

map.set(name,value); // 可以設定name,value

map.get(name); // 可以單獨獲取name

map.delete(name); // 可以單獨刪除name

//與for of 的配合

for(var name of map)

for(var [key,value] of map)

for(var key of map.keys) // 可以只迴圈map中的key值

//例一

let arr=[12,5,8];

let result=arr.map(item=>item*2);

alert(result);

//例二

let score=[19, 85, 99, 25, 90];

let result=score.map(item=>item>=60?'及格':'不及格');

alert(score);

alert(result);

//求和

let arr=[12,69,180,8763];

let result=arr.reduce(function (tmp, item, index));

alert(result);

//求平均數

let arr=[12,69,180,8763];

let result=arr.reduce(function (tmp, item, index)else

});alert(result);

let arr=[12,5,8,99,27,36,75,11];

//選擇能夠被3整除的數

let result=arr.filter(item=>item%3==0);

alert(result);

let arr=[12,5,8,9];

arr.foreach((item,index)=>);

//old

function user(name, pass)

user.prototype.showname=function ();

user.prototype.showpass=function ();

//es6

class user

showname()

showpass()

}

supper關鍵字:超類、父類

//old

function vipuser(name, pass, level)

vipuser.prototype=new user();

vipuser.prototype.constructor=vipuser;

vipuser.prototype.showlevel=function ();

//es6    

class vipuser extends user

showlevel()

}

模組化exprot default // 匯出

import moda from './a.js' // 引入模組

ES6新增常用方法

let 1.在塊級作用域內部有效 迴圈中迴圈變數部分和迴圈體內部是不同作用域 不存在變數提公升,先宣告後使用,否則報錯 4.塊級作用域內只要存在let,所生命的變數就 繫結 這個區域,不受外界影響 var a for let i 1 i 10 i a 6 6塊級作用域與函式宣告 允許在塊級作用域內宣...

ES6新增,常用的方法

新增了canvas 繪畫檢視 新增了定義class的語法糖 函式的新增了箭頭函式 函式引數的預設值 陣列例項新增了 keys values entries 新增了基本資料型別 symbol 變數的解構賦值 新增了map資料結構 和 set資料結構 新增了模組化 import export 陣列和物件...

ES6新增方法

變數宣告 let 1.區域性變數,只能在區域性呼叫 2.不能重複宣告 3.不會提公升變數 console.log a let a const 1.宣告乙個常量 2.宣告必須賦值 3.不能被修改 4.變數名建議大寫,如 const pi 3.14 變數型別 資料型別 1.數字 number 2.字串 ...