ES6入門一(常見的面試點)

2021-08-16 08:43:49 字數 3037 閱讀 4891

在es6之前,變數宣告關鍵字:

var a =0;

var a = 99;

(2)var會造成變數提公升

(function rr() 

console.log(a); //輸出666

})()

es6變數宣告關鍵字:let 變數宣告;const 常量宣告。

解決了var前面提到的兩個缺點。

let以及const都是塊級作用域。

如何理解塊級作用域

常見面試題:

for(var a = 0; a < 3; a++) , 1000)

}//輸出結果都為3

如何將結果輸出為0, 1, 2

es5處理方法 -- 用函式製造塊級作用域

for(var a = 0; a < 3; a++) , 1000)

})(a)

}//輸出結果0,1,2

es6處理方法 -- 更加簡單明瞭

for(let a = 0; a < 3; a++) , 1000)

}//輸出結果為:0,1,2

(1)不需要function關鍵字來建立函式

es5建立函式

var aa = function() {}
es6建立函式

var aa = () => {}
(2)可以極大的簡寫函式

es5函式

var fn = function(a)
可以利用箭頭函式簡寫為:

var fn = a => a + 5;
簡寫規則:

(3)繼承上下文的關鍵字this

es5繼承上下文的關鍵字

var fn = function() 

fn.bind(this)

es6繼承上下文的關鍵字

var fn = () => {}

3、陣列

新增常用的4個方法

(1)map --對映

let arr=[66,59,80];

let result=arr.map(item => else

});//result:["及格", "不及格", "及格"]

(2)reduce --彙總

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

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

console.log(result);//求和

(3)filter --過濾

let arr=[,,

,];let result=arr.filter(json=>json.price>=5000);

console.log(result);//[,]

(4)foreach --迭代

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

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

4、函式的引數

(1)收集引數

function show(a, b, ...args)

show(1,2,3,4,5,6) //輸出[3,4,5,6]

(2)展開陣列

const arr1 = [1,2,3];

const arr2 = [4,5,6];

console.log([...arr1, ...arr2]); //輸出[1,2,3,4,5,6]

console.log(...arr1); //輸出1,2,3

(3)預設值

const show = (a=666, b=999) => 

show();

5、解構賦值

(1)左右兩邊結構必須一樣;

(2)右邊必須是個合法的值;

(3)宣告和賦值不能分開(必須在一句話裡完成);

let [a,b,c]=[1,2,3,999];

let =;

console.log(a,b,c,e,d,g);

//輸出1 2 3 4 5 7

6、字串

(1)多了兩個新方法: startswith endswith

if(str.endswith('.txt'))else if(str.endswith('.jpg'))else(2)字串模板

優點:方便字串拼接;可以折行

let title='標題';

let content='內容';

let str='\

\ '+content+'\';

let str2=`

$`;

es6入門學習一

1 let和const命令 對於const來說,只宣告不賦值,就會報錯 const的作用域與let命令相同 只在宣告所在的塊級作用域內有效 const和let都不存在是常量提公升,同樣存在暫時性死區,宣告的常量都不可重複,都是先宣告後使用 2 變數的解構賦值 預設值生效的條件是,物件的屬性值嚴格等於...

ES6入門概覽一

一 let const 1.let命令 宣告變數僅在塊級作用域有效 let實際上為js新增了塊級作用域 好處 不存在變數提公升 內部宣告的變數 函式 不會影響外部 不可重複宣告變數 2.const 宣告常亮 宣告時賦值 宣告變數 1.var 2.function es5 全域性物件屬性 3.let ...

ES6常見語法

解構賦值 一.物件的解構賦值 常遇到的場景 export default class list extends purecomponent this handleadd this handleadd.bind this this handlemodify this handlemodify.bind...