久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

es2017是es6還是es8

es2017是es8。es全稱“ECMAScript”,是根據ECMA-262標準實現的通用腳本語言,而由2017年6月正式發布的版本,其正式名為ECMAScript2017(ES2017),因其是ECMAScript的第8個版本,因此可簡稱為es8。

es2017是es6還是es8

前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

本教程操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

“es”簡介

es全稱“ECMAScript”,是根據 ECMA-262 標準實現的通用腳本語言,ECMA-262 標準主要規定了這門語言的語法、類型、語句、關鍵字、保留字、操作符、對象等幾個部分。每次看到 ES 后面跟著數字,是 ECMAScript 的不同版本。

es8/ ES2017

es8全稱ECMAScript8(ECMAScript的第8個版本),是于2017年6月正式發布的JavaScript語言的標準,正式名為ECMAScript 2017(ES2017)。

與 ES6 相比,ES8 是 JavaScript 的一個小版本,但它仍然引入了非常有用的功能:

  • 字符串填充(padStart 和 padEnd)

  • Object.values

  • Object.entries

  • Object.getOwnPropertyDescriptors()

  • 函數參數列表和調用中的尾隨逗號

  • Async Functions (異步函數)

  • 共享內存 和 Atomics

字符串填充(padStart 和 padEnd)

字符串填充的目的是 向字符串添加字符,使字符串達到指定的長度。

ES2017引入了兩個 String 方法:padStart()padEnd()

JavaScript 代碼:

padStart(targetLength [, padString]) padEnd(targetLength [, padString])
登錄后復制

簡單的使用:

es2017是es6還是es8

Object.values()

這個方法返回一個包含所有對象自身屬性值的數組。

使用:

JavaScript 代碼:

const person = { name: 'Fred', age: 87 } Object.values(person) // ['Fred', 87]
登錄后復制

Object.values() 也適用于數組:

JavaScript 代碼:

const people = ['Fred', 'Tony'] Object.values(people) // ['Fred', 'Tony']
登錄后復制

Object.entries()

這個方法返回一個包含所有對象自身屬性的數組,作為 [key,value] 對的數組。

使用:

JavaScript 代碼:

const person = { name: 'Fred', age: 87 } Object.entries(person) // [['name', 'Fred'], ['age', 87]]
登錄后復制

Object.entries() 也適用于數組:

JavaScript 代碼:

const people = ['Fred', 'Tony'] Object.entries(people) // [['0', 'Fred'], ['1', 'Tony']]
登錄后復制

Object.getOwnPropertyDescriptors()

此方法返回對象的所有自有(非繼承的)屬性描述符。

JavaScript 中的任何對象都有一組屬性,每個屬性都有一個描述符。

描述符是屬性(property) 的一組特性(attributes),它由以下的子集組成:

  • value:屬性的值
  • writabletrue 表示改屬性可以被修改
  • get:屬性的 getter 函數,在讀取屬性時調用
  • set:屬性的 setter 函數,在屬性設置值時調用
  • configurable:如果為 false ,則不能刪除屬性,也不能更改任何屬性,但值除外
  • enumerable:如果屬性是可枚舉的,則為 true

Object.getOwnPropertyDescriptors(obj) 接受一個對象,并返回一個帶有描述符集的對象。

這個方法有什么用?

ES2015 給我們帶來了 Object.assign() 方法,它從一個或多個對象復制所有可枚舉的屬性,并返回一個新對象。

但是存在問題,它無法正確復制具有非默認特性(attribute) 的屬性 (property)(getter,setter,不可寫屬性,等)。

如果一個對象只有一個 setter ,則無法使用 Object.assign() 正確地復制到一個新對象。

例如:

JavaScript 代碼:

const person1 = {     set name(newName) {         console.log(newName)     } }
登錄后復制

以下代碼將不起作用:

JavaScript 代碼:

const person2 = {} Object.assign(person2, person1)
登錄后復制

但下面的代碼就會奏效:

JavaScript 代碼:

const person3 = {} Object.defineProperties(person3,   Object.getOwnPropertyDescriptors(person1))
登錄后復制

您可以通過簡單的控制臺測試,將會看到:

JavaScript 代碼:

person1.name = 'x' "x"   person2.name = 'x'   person3.name = 'x' "x"
登錄后復制

person2 丟失了 setter ,因為它沒有復制過來。

使用 Object.create() 對淺拷貝對象也有同樣的限制。

函數參數列表和調用中的尾隨逗號

此功能允許在函數聲明和函數調用中使用尾隨逗號:

JavaScript 代碼:

const doSomething = (var1, var2,) => {   //... } doSomething('test2', 'test2',)
登錄后復制

這一變化將鼓勵開發人員停止丑陋的“行以逗號開頭”的習慣。

Async Functions (異步函數)

ES2017 引入了 Async Functions (異步函數) 的概念,這是 ECMAScript 版本中引入的最重要的變化。

Async Functions (異步函數) 是 promises 和 generators(生成器) 的組合,以簡化 promises 調用,提過代碼的可讀性,但是不打破 promises 鏈式調用的限制。

為什么有用

這是對 promises 更高層次的抽象。

當 Promise 在 ES2015 中引入時,它們的目的是解決異步代碼的問題,并且他們做到了。但在 ES2015 和 ES2017 相間隔的兩年時間里,很明顯, Promise 并不是最終的解決方案。

引入 Promise 是為了解決著名的 回調地獄 問題,但它們引入了自己的復雜性和語法復雜性。它們是良好的原語,可以向開發人員公開更好的語法:那就是Async Functions (異步函數)。

一個簡單的例子

使用異步函數的代碼可以寫成:

JavaScript 代碼:

function doSomethingAsync() {     return new Promise((resolve) => {         setTimeout(() => resolve('I did something'), 3000)     }) } async function doSomething() {     console.log(await doSomethingAsync()) } console.log('Before') doSomething() console.log('After')
登錄后復制

上面的代碼將在瀏覽器控制臺中打印以下內容:

JavaScript 代碼:

Before After I did something //after 3s
登錄后復制

鏈式調用多個異步函數

異步函數可以非常容易地鏈式調用,并且語法比簡單的 Promise 更具可讀性:

JavaScript 代碼:

function promiseToDoSomething() {     return new Promise((resolve)=>{         setTimeout(() => resolve('I did something'), 10000)     }) } async function watchOverSomeoneDoingSomething() {     const something = await promiseToDoSomething()     return something + ' and I watched' } async function watchOverSomeoneWatchingSomeoneDoingSomething() {     const something = await watchOverSomeoneDoingSomething()     return something + ' and I watched as well' } watchOverSomeoneWatchingSomeoneDoingSomething().then((res) => {     console.log(res) })
登錄后復制

共享內存 和 Atomics

WebWorkers 用于在瀏覽器中創建多線程程序。

他們通過事件提供消息傳遞協議。 從ES2017開始,您可以使用 SharedArrayBuffer 在 Web worker 及其創建者之間創建共享內存數組。

由于我們不知道向共享內存部分寫入要花費多少時間來傳播,因此 Atomics 是一種在讀取值時執行該操作的方法,并且完成了任何類型的寫入操作。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
精品一区不卡| 另类亚洲自拍| 日本亚洲欧美天堂免费| 视频一区在线视频| 亚洲视频电影在线| 亚洲区欧美区| 欧美精品国产一区| 国产精品欧美一区二区三区不卡 | 鲁大师影院一区二区三区| 五月天久久网站| 亚洲自啪免费| 天堂va蜜桃一区二区三区| 久久一二三区| 欧美一区自拍| 精品精品99| 亚洲精品在线影院| 亚洲天堂久久| 中文一区一区三区免费在线观 | 国产精品综合| 精品一区二区三区中文字幕在线| 电影91久久久| 亚洲一级网站| 中文字幕亚洲在线观看| 国产丝袜一区| 久久电影tv| jiujiure精品视频播放| 久久av在线| 国产亚洲一卡2卡3卡4卡新区| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 自拍自偷一区二区三区| 日韩av黄色在线| 精品一区二区三区视频在线播放 | 黄色在线观看www| 午夜电影亚洲| 综合亚洲视频| 麻豆精品av| 欧美高清一区| 国产私拍福利精品视频二区| 中文在线免费视频| 香蕉精品视频在线观看| 日韩一区二区三免费高清在线观看| 国产精品美女在线观看直播| 日韩不卡在线| 日本欧美在线| 99久久亚洲精品蜜臀| 亚洲一区二区三区四区电影 | 日韩在线综合| 综合国产视频| 国产粉嫩在线观看| 亚洲视频二区| 精品国产aⅴ| 野花国产精品入口| 美女精品一区二区| 欧洲激情综合| 麻豆久久久久久久| 鲁大师成人一区二区三区| 国产一区二区视频在线看| 伊人久久成人| 久久女人天堂| 综合精品一区| 三级小说欧洲区亚洲区| 日韩高清欧美激情| 日韩精品免费一区二区三区| 久久国产精品色av免费看| 五月天久久久| www.51av欧美视频| 视频一区日韩精品| 91精品国产成人观看| 日韩一区网站| 黄色国产精品| 神马午夜在线视频| 国产精品一区二区av日韩在线| 欧美不卡高清| 老牛影视精品| 国产精品香蕉| 亚洲网址在线观看| 久久精品一区二区不卡| 国产高清视频一区二区| 美国欧美日韩国产在线播放| 日韩成人亚洲| 老司机精品视频在线播放| 色婷婷成人网| 亚洲综合二区| 亚洲性色av| 精品五月天堂| 欧美日韩夜夜| 日韩手机在线| 中文久久精品| 日韩欧美一区二区三区在线观看 | 国产一区不卡| 国产亚洲一区| 亚洲一区二区三区久久久| 婷婷成人在线| 成午夜精品一区二区三区软件| 日本a口亚洲| 亚洲久久一区| 久久不射网站| 久久国产精品99国产| 欧美日韩高清| 精品中文字幕一区二区三区av| 国产精品二区不卡| 久久精品国产成人一区二区三区| 欧美自拍一区| 欧美视频二区| 日韩有码av| 亚洲aa在线| 亚洲视频电影在线| 免费日本视频一区| 蜜臀91精品一区二区三区| aⅴ色国产欧美| 国产日韩综合| 久久亚洲二区| 中文字幕免费精品| 蜜桃一区二区三区在线| 在线精品一区| 亚洲免费毛片| 日韩黄色在线观看| 亚洲精品美女| 日韩成人在线看| 日韩激情中文字幕| 欧美视频一区| 国产精品欧美日韩一区| 国产精选久久| 久久99性xxx老妇胖精品| 国产精品a级| 久久久久伊人| 国产精品毛片一区二区在线看| 91日韩免费| 久久精品亚洲人成影院| 国产综合色产| 丝袜a∨在线一区二区三区不卡| 快she精品国产999| 亚洲aⅴ网站| 国产伦理久久久久久妇女| 国产精品亚洲产品| 久久久久久自在自线| 日韩av福利| 蜜臀91精品国产高清在线观看 | av资源亚洲| 久久美女性网| 99国产精品99久久久久久粉嫩| 美女精品在线| 免费一区二区视频| 国产日本久久| 国产成人在线中文字幕| av资源亚洲| 天堂成人免费av电影一区 | 亚洲人成在线影院| 国产日韩免费| 日韩av有码| 欧美午夜精品一区二区三区电影| 在线国产一区二区| 日韩va亚洲va欧美va久久| 精品九九在线| 欧美日韩国产欧| 日韩视频1区| 激情中国色综合| 欧美中文一区二区| 综合亚洲视频| 久久三级中文| 午夜精品影院| 欧美三区不卡| 日韩成人亚洲| 亚州国产精品| 精品视频一区二区三区四区五区| 久久久久国产精品一区二区| 亚洲一区二区三区无吗| 麻豆精品一区二区综合av| 亚洲国内精品| 国产日韩高清一区二区三区在线| 水蜜桃精品av一区二区| 99视频精品免费观看| 国产欧美一区二区三区精品观看 | 国产经典一区| 在线日韩av| 人人爱人人干婷婷丁香亚洲| 国产伊人久久| 久久亚洲风情| 97精品国产一区二区三区| 亚洲免费网址| 精品国产aⅴ| 日韩一区精品视频| 精品国产乱码久久久久久1区2匹| 欧美成人日韩| 国产调教一区二区三区| 亚洲高清毛片| 久久不卡国产精品一区二区| 91精品在线观看国产| 日韩不卡在线观看日韩不卡视频| 极品av在线| 欧美亚洲三级| 亚洲激情中文| 黄色网一区二区| 天堂久久av| 亚洲欧美一区在线| 国产96在线亚洲| 日韩欧美中文字幕一区二区三区| 亚洲风情在线资源| 国产欧美日韩视频在线 | 久久久久伊人|