ES6知識點簡單總結

2021-10-07 08:12:51 字數 4082 閱讀 9298

let宣告的變數只能在所處遇到的快級有效。

不存在變數提公升。

暫時性死區,不受外部**影響。

在乙個大括號中使用let關鍵字宣告的變數才具有塊級作用域,var關鍵字不具有這個特點

具有塊級作用域。

使用const關鍵字宣告的常量必須賦值。

常量賦值後值不能更改。

varletconst

函式級作用域

塊級作用域

塊級作用域

變數提公升

不存在變數提公升

不存在變數提公升

值可更改

值可更改

值不可更改

含義:es6中允許從陣列中提取值,按照對應位置對變數賦值,物件也可以實現賦值

1.資料結構:允許我們按照一一對應的關係從陣列中提取值然後將值賦值給變數。例如:

let ary =[1

,2,3

];let[a,b,c]

= ary;

console.

log(a)

//1console.

log(b)

//2console.

log(c)

//3

2.物件結構:物件結構允許我們使用變數的名字匹配物件的屬性,匹配成功將物件屬性的值賦值給變數。

例如:

let person =

let=person;

console.

log(person)

箭頭函式:()=>

const fn =()=>

fn();

函式體中只有一句**,且**的執行結果就是函式的返回值,『{}』 大括號可省略:

const sum = (n1,n2)=> ;

等於const sum =(n1,n2)=> n1+n2;

如果形參有乙個,小括號也可省略,

function fn(v)

等於const fn = v => v;

箭頭函式不定義this,箭頭函式沒有自己的this關鍵字,如果在箭頭函式中使用this,this關鍵字將指向箭頭函式定義位置中的this

function

sum(first,

...args)

sum(10,

20,30)

…args將所有的剩下的引數接受

2.剩餘引數與解構解構配合使用

let students =

['z'

,'b'

,'c'

]let

[s1,

...s2]

= students;

console.

log(s1);//

console.

log(s2)

1.定義:可以將陣列或者物件轉換為用逗號分隔的引數序列

例:

let ary =[1

,2,3

];console.

log(

...ary)

;

沒有逗號了是因為逗號被當成console.log的引數分隔符了

2.可用於合併陣列

法一

let ary1 =[1

,2,3

];let ary2 =[3

,4,5

];let ary3 =

[...ary1,

...ary2]

console.

log(ary3)

法二

let ary1 =[1

,2,3

];let ary2 =[3

,4,5

];// let ary3 = [...ary1,...ary2];

// console.log(ary3)

ary1.

push

(...ary2)

;console.

log(ary1)

3.擴充套件運算子可將陣列轉換為真正的陣列

1<

/div>

2<

/div>

3<

/div>

4<

/div>

5<

/div>

6<

/div>

<

/div>

var odivs = document.

getelementsbytagname

('div');

console.

log(odivs)

var ary =

[...odivs]

;

console.

log(ary)

;<

/script>

<

/body>1.建構函式方法:

let arraylike =

let arr2 = array.

from

(arraylike)

console.

log(arr2)

2.array例項方法:find

用於找出第乙個符合條件的陣列成員,如果沒有找到返回underfind

var arr =[,

];let target = arr.

find

(item => item.id ==2)

;console.

log(target)

3.array例項方法:findindex

用於找出第乙個符合條件的成員的位置,如果沒找到返回-1

let ary =[1

,5,10

,15]let index = ary.

findindex

((value,index)

=> value>9)

;console.

log(index)

;

4.array例項方法:includes

表示某個陣列是否包含給定的值,返回布林值

let ary =

['a'

,'b'

,'c'];

let result = ary.

includes

('a'

)console.

log(result)

let name=

'giao哥'

let sayhello =$`

;console.

log(sayhello)

1.模板字串中可以呼叫函式

let result=

let html =`$

$$`;

console.

log(html)

2.在模板字串中可呼叫函式

const

sayhello

=function()

;let greet =`$

`;console.

log(greet)

;

startswith判定某引數字串是否在字串的頭部

endswitch判定某引數字串是否在字串的尾部

let str =

'hello giao哥'

;let e1 = str.

startswith

('hello');

console.

log(e1)

let e2 = str.

endswith

('giao哥');

ES6知識點總結

面向過程和物件導向的對比 面向過程 物件導向 物件 物件是由屬性和方法組成的 類 class 在 es6 中新增加了類的概念,可以使用 class 關鍵字宣告乙個類,之後以這個類來例項化物件 物件導向的思維特點 抽取 抽象 物件共用的屬性和行為組織 封裝 成乙個類 模板 對類進行例項化,獲取類的物件...

es6常用知識點總結

1.定義變數的方式 let 1 沒有變數提公升 var具有變數提公升 即在當前作用域的最上面定義這個變數 但不賦值 例 console.log x var x 20 顯示undefined console.log m let m 100 報錯 2 let不可以重複宣告 例 var x 10 var ...

ES6知識點總結(一)

es6知識點總結 一 是對賦值運算子的擴充套件,一種針對陣列或者物件進行模式匹配,然後對其中的變數進行賦值 變數的解構賦值實用性很強,使用場景很多 1.交換賦值 2.函式引數的定義 3.函式引數的預設值 4.從函式返回多個值 5.提取json資料 6.遍歷map結構 陣列解構 物件解構 字串解構 數...