成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

ES6學(xué)習(xí)總結(jié)(一)

_ipo / 3154人閱讀

摘要:可以通過(guò)調(diào)用方法將創(chuàng)建一個(gè)新的類型的值,這個(gè)值獨(dú)一無(wú)二,不與任何值相等。還可以使可擴(kuò)展,在中,表達(dá)式被標(biāo)準(zhǔn)化為構(gòu)造函數(shù)的一個(gè)方法,這意味著它是可擴(kuò)展的。

前端發(fā)展的太快了,快到ES6,ES7出來(lái)之后,今年已經(jīng)是ES8了,但是縱然前端發(fā)展很快,我們除了馬不停蹄的學(xué)習(xí)新的技術(shù)之外,也要沉下心來(lái),好好的潛心磨礪自己,本文是整理了自己學(xué)習(xí)ES6之后相關(guān)的知識(shí)要點(diǎn),寄希望于書之于筆,一來(lái)自己可以更好地領(lǐng)悟,而來(lái)也可以留作日后翻閱查看。

ES6新增的知識(shí)點(diǎn)主要包括變量聲明let以及const,新增類型symbol,模板字符串,語(yǔ)法糖實(shí)現(xiàn)類,用于異步調(diào)用的promise對(duì)象,模塊化,箭頭函數(shù),rest參數(shù)以及參數(shù)默認(rèn)值,Set和Map集合,for of循環(huán)和迭代器iterator以及Generator等等,可以看出,ES6較之于ES5還是有著很多的新增特性,接下來(lái)會(huì)分為幾篇文章將其一一介紹。

let和const

在JavaScript中咱們以前主要用關(guān)鍵var來(lái)定義變量,ES6之后,新增了定義變量的兩個(gè)關(guān)鍵字,分別是let和const

對(duì)于變量來(lái)說(shuō),在ES5中var定義的變量會(huì)提升到作用域中所有的函數(shù)與語(yǔ)句前面,而ES6中l(wèi)et定義的變量則不會(huì),let聲明的變量會(huì)在其相應(yīng)的代碼塊中建立一個(gè)暫時(shí)性死區(qū),直至變量被聲明。

//var聲明變量
console.log(x === undefined); // "true"
var x = 3;
//let聲明變量
console.log(x === undefined); // Uncaught ReferenceError: x is not defined
let x = 3;

從上面的代碼可以看出來(lái),使用let我們可以偽造一個(gè)代碼塊,終于不再局限于函數(shù)作用域中,而且對(duì)于代碼也會(huì)更加的規(guī)范,使用let定義變量,提倡人們先定義再使用,不然會(huì)報(bào)錯(cuò)。

const主要作用于定義常量,而且一旦聲明,初始必須賦值,并且變量值不能更改,否則會(huì)報(bào)錯(cuò)

const CALA;
//Missing initializer in const declaration
const CALA="calabash519"
CALA="hello world";
//Assignment to constant variable.

symbol

ES6 以前,我們知道5種基本數(shù)據(jù)類型分別是Undefined,Null,Boolean,Number以及String,然后加上一種引用類型Object構(gòu)成了JavaScript中所有的數(shù)據(jù)類型,但是ES6出來(lái)之后,新增了一種數(shù)據(jù)類型,名叫symbol,像它的名字表露的一樣,意味著獨(dú)一無(wú)二,意思是每個(gè) Symbol類型都是獨(dú)一無(wú)二的,不與其它 Symbol 重復(fù)。

可以通過(guò)調(diào)用 Symbol() 方法將創(chuàng)建一個(gè)新的 Symbol 類型的值,這個(gè)值獨(dú)一無(wú)二,不與任何值相等。

var mySymbol=Symbol();
console.log(typeof mySymbol) //"symbol"

其他類型可以被強(qiáng)制轉(zhuǎn)換成字符串,但是Symbol 卻不能,千萬(wàn)不要這么做,不然會(huì)報(bào)錯(cuò),提示TypeError。

可以使用Symbol來(lái)定義對(duì)象的屬性,而且當(dāng)Symbol作為屬性名的時(shí)候,必須用[]來(lái)進(jìn)行調(diào)用而不是點(diǎn)操作符。

var obj = {};
var mySymbol = Symbol();
obj[mySymbol] = "calabash519";
console.log(obj[mySymbol]); //calabash519
console.log(obj.mySymbol); //undefined

Symbol還可以使 instanceof 可擴(kuò)展,在 ES6 中,object instanceof constructor 表達(dá)式被標(biāo)準(zhǔn)化為構(gòu)造函數(shù)的一個(gè)方法:constructor[Symbol.hasInstance](object),這意味著它是可擴(kuò)展的。

模板字符串

字符串是JavaScript中基本類型之一,應(yīng)該算是除了對(duì)象之外是使用最為頻繁的類型吧,字符串中包含了例如substr,replace,indexOf,slice等等諸多方法,ES6引入了模板字符串的特性,用反引號(hào)來(lái)表示,可以表示多行字符串以及做到文本插值(利用模板占位符)。

// 以前的多行字符串我們這么寫:
console.log("hello world 1

hello cala");
// "hello world
// hello cala"

//有了模板字符串之后
console.log(`hello world
string text line 2`);
// "hello world
// hello cala"

可以用${}來(lái)表示模板占位符,可以將你已經(jīng)定義好的變量傳進(jìn)括弧中,例如:

var name="cala";
var age=22;
console.log(`hello,I"am ${name},my age is ${age}`)
//hello,I"am cala,my age is 22

上述是個(gè)很簡(jiǎn)單的例子,展示了模板字符串和模板占位符的基本用法,對(duì)比與普通字符串,模板字符串可以更好地支持自動(dòng)轉(zhuǎn)義特殊的字符串,也可以在其內(nèi)嵌套控制語(yǔ)句,使得代碼的邏輯更加清晰。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/87273.html

相關(guān)文章

  • ES6-7

    摘要:的翻譯文檔由的維護(hù)很多人說(shuō),阮老師已經(jīng)有一本關(guān)于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發(fā)過(guò)程中,顯得越來(lái)越重要。為了讓編程更美好,我們就需要引入來(lái)降低異步編程的復(fù)雜性。 JavaScript Promise 迷你書(中文版) 超詳細(xì)介紹promise的gitbook,看完再不會(huì)promise...... 本書的目的是以目前還在制定中的ECMASc...

    mudiyouyou 評(píng)論0 收藏0
  • ES6解構(gòu)賦值學(xué)習(xí)總結(jié)

    摘要:提供了解構(gòu)賦值的方式,這樣子在賦值多個(gè)變量或者進(jìn)行注釋時(shí)可以方便很多,不同場(chǎng)景下也有很多新的應(yīng)用,個(gè)人常使用的有數(shù)組的解構(gòu)賦值,對(duì)象的解構(gòu)賦值和函數(shù)參數(shù)的解構(gòu)賦值,函數(shù)參數(shù)的解構(gòu)賦值之前總結(jié)過(guò),這里寫下數(shù)組的和對(duì)象的簡(jiǎn)單總結(jié)吧函數(shù)參數(shù)的解構(gòu) ES6提供了解構(gòu)賦值的方式,這樣子在賦值多個(gè)變量或者進(jìn)行注釋時(shí)可以方便很多,不同場(chǎng)景下也有很多新的應(yīng)用,個(gè)人常使用的有數(shù)組的解構(gòu)賦值,對(duì)象的解構(gòu)賦...

    levinit 評(píng)論0 收藏0
  • ES6學(xué)習(xí)總結(jié)(1)

    摘要:返回一個(gè)對(duì)象,遍歷對(duì)象自身和繼承的所有可枚舉屬性不含,與相同和在紅寶書中就已經(jīng)提到過(guò)屬性,表示的是引用類型實(shí)例的一個(gè)內(nèi)部指針,指向該實(shí)例的構(gòu)造函數(shù)的原型對(duì)象。 半個(gè)月前就決定要將ES6的學(xué)習(xí)總結(jié)一遍,結(jié)果拖延癥一犯,半個(gè)月就過(guò)去了,現(xiàn)在補(bǔ)起來(lái),慚愧慚愧。 阮一峰的《ES6標(biāo)準(zhǔn)入門》這本書有300頁(yè)左右,除了幾個(gè)新的API和js語(yǔ)法的擴(kuò)展,真正有價(jià)值的內(nèi)容并不多。所謂存在即合理,每部分的...

    happyfish 評(píng)論0 收藏0
  • 前端資源系列(4)-前端學(xué)習(xí)資源分享&前端面試資源匯總

    摘要:特意對(duì)前端學(xué)習(xí)資源做一個(gè)匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 特意對(duì)前端學(xué)習(xí)資源做一個(gè)匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 本以為自己收藏的站點(diǎn)多,可以很快搞定,沒想到一入?yún)R總深似海。還有很多不足&遺漏的地方,歡迎補(bǔ)充。有錯(cuò)誤的地方,還請(qǐng)斧正... 托管: welcome to git,歡迎交流,感謝star 有好友反應(yīng)和斧正,會(huì)及時(shí)更新,平時(shí)業(yè)務(wù)工作時(shí)也會(huì)不定期更...

    princekin 評(píng)論0 收藏0
  • ES6系統(tǒng)學(xué)習(xí)----對(duì)比var,let

    摘要:對(duì)于,雖然之前也有過(guò)學(xué)習(xí),但總的來(lái)說(shuō)還是不夠系統(tǒng)的,知識(shí)點(diǎn)非常的零碎。因此包括以為基礎(chǔ)產(chǎn)生的語(yǔ)法糖在逐漸的趨近于強(qiáng)類型的語(yǔ)言。是創(chuàng)建,而不是的覆蓋。因而稱之為富一代。所以語(yǔ)法標(biāo)準(zhǔn)的更新將對(duì)良好編程習(xí)慣有著極大的利好。 對(duì)于ES6,雖然之前也有過(guò)學(xué)習(xí),但總的來(lái)說(shuō)還是不夠系統(tǒng)的,知識(shí)點(diǎn)非常的零碎?,F(xiàn)在結(jié)合之前遇到的問(wèn)題把ES6中的知識(shí)點(diǎn)總結(jié)一下。最初接觸ES6時(shí),明白ES5中聲明變量的方式...

    ls0609 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<