国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ES6-ES13用法(高頻面試題)

這篇具有很好參考價(jià)值的文章主要介紹了ES6-ES13用法(高頻面試題)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1. ES6新增的方法
  • let和const,解構(gòu)賦值、模板字符串、箭頭函數(shù)。

  • Symbol、Map、Set三種常用的數(shù)據(jù)類型。

  • Proxy重新定義了數(shù)據(jù)劫持的能力

  • Reflect定義了一套標(biāo)準(zhǔn)化的數(shù)據(jù)操作的方式

  • Promise確實(shí)的解決了異步邏輯嵌套及回調(diào)地獄問題。定義了異步邏輯的三種狀態(tài)pending、rejected、fullfilled, 搭配then、catch、all、race等方法以及async await語法糖,大量簡化了異步操作。

  • Generator函數(shù),可以將異步邏輯劃片執(zhí)行。

    • Generator 函數(shù)是 ES6 提供的一種異步編程解決方案

    • Generator 函數(shù)是一個(gè)狀態(tài)機(jī),封裝了多個(gè)內(nèi)部狀態(tài)。

    • 執(zhí)行 Generator 函數(shù)會返回一個(gè)遍歷器對象,也就是說,Generator 函數(shù)除了狀態(tài)機(jī),還是一個(gè)遍歷器對象生成函數(shù)。返回的遍歷器對象,可以依次遍歷 Generator 函數(shù)內(nèi)部的每一個(gè)狀態(tài)。

  • 新增了class類的概念

  • ES6 Modules

2. var, let, const的區(qū)別

? ? ?ES6新增了定義變量的關(guān)鍵字 let和const, 分別用于定義塊級變量和常量

? ? ?let, const不會聲明提前, 存在暫時(shí)性死區(qū)

? ? ?外部無法使用到內(nèi)部的let和const定義的變量, 存在塊級作用域限制]

const 定義的常量, 無法更改。

 ?if(true){
 ? ? ? let name ="kerwin"
 ? }
 ? 
 ? const obj = {name:"kerwin"}
 ? obj.name="xiaoming"
 ? // obj = {name:"xioamng"}
 ? // obj= 'dwadwa'
3. 箭頭函數(shù)

箭頭函數(shù)是ES6推出的,所以在低版本瀏覽器是有兼容問題的,語法簡介明了,邏輯更清晰。

箭頭函數(shù)沒有自己的this,this指向外部的this,并且this會在創(chuàng)建的時(shí)候就綁定好.

const fn1 = function() {
 ?console.log(this)
}
fn1() // window
const obj = { ?
 ?name: 'tom', ?
 ?fn2 () { ? ?
 ? ?fn1() // window ? ?
 ? ?console.log(this) // obj ?
  }
}
obj.fn2()
?
// 在箭頭函數(shù)定義的位置往上數(shù),這一行是可以打印出 this 的
// 因?yàn)檫@里的 this 是 window
// 所以箭頭函數(shù)內(nèi)部的 this 就是 window
const obj = {
  fn: function () {
 ?  console.log(this)
  },
  // 這個(gè)位置是箭頭函數(shù)的上一行,但是不能打印出 this
  fun: () => {
 ?  // 箭頭函數(shù)內(nèi)部的 this 是書寫箭頭函數(shù)的上一行一個(gè)可以打印出 this 的位置
 ?  console.log(this)
  }
}
?
obj.fn()
obj.fun()
4. 解構(gòu)
	let {type,payload} = data;  // {type:"",payload:""}
5 ... 展開合并
    [...arr1,...arr2]   
    {...obj1,...obj2} 
6. promise
    //異步處理方案
    1. 回調(diào)函數(shù)
 ? ?2. Promise
 ? ?3. generator 生成器 yield 
 ? ?4. async await
?
    //解決回調(diào)地獄 ,嵌套金字塔
    
    function test1(){
        return new Promise((resolve,rejet)=>{
            setTimeout(() => {
                resolve("123")
            }, 2000)
        })
    }
    
    test1().then(res=>{
    
    }).catch(error=>{
    
    })
    // pending reject fullfilled
    
    axios.get("1.php").then(res=>{
        return axios.get(2.php,{res})
    }).then(res=>{
        return axios.get(3.php)
    }).then(res=>{
        console.log(res.data)
    }).catch(error=>{
        console.log(error)
    })
    async await 寫起來
    
    async function test(){
        var a = await axios.get(1);
        var b= await axios.get(2,{a});
        var c= await axios.get(3,)
        console.log(c);
    }
    
    test()
    
    //所有的異步都結(jié)束
    Promise.all([axios.get(1),axios.get(2)]).then(res=>{
        //loading隱藏
    }).catch(error=>{
    
    })
    
    Promise.race([axios.get(1),axios.get(2)])
?
    `Promise.any()`跟`Promise.race()`方法很像,只有一點(diǎn)不同,就是`Promise.any()`不會因?yàn)槟硞€(gè) Promise 變成`rejected`狀態(tài)而結(jié)束,必須等到所有參數(shù) Promise 變成`rejected`狀態(tài)才會結(jié)束。
7 .class (語法糖 => 構(gòu)造函數(shù),babel-loader)
   class Person{
        constructor(name,age) {
         ?this.name = name;
         ?this.age =age;
        }
        say=()=>{
    
        }
    }
    
    class Test extends person{
        constructor(name,age,location) {
         ?super(name,age);
         ?this.location = location;
        }
 ? ? ? 
    }
8 .模塊化
   import obj from "./a" ; ?
    export default aaa;
    
    import {test} from "./b" ; 
    export {test} ; 
    export var test =function(){}
 
?
    AMD - 前端 異步加載 - 提前下載, 提前加載 require.js
    CMD - ?異步加載 - 提前下載 , 按需加載 -- 玉伯 -sea.js
    CommonJs -同步加載(webpack)
        require("./b") ? ?
        =>module.exports 
        =>exports
    ES6 - 模塊化
    
    //ES6 和 commonJS區(qū)別?
    //ES6可以導(dǎo)入某幾個(gè)接口 import {a} from './module.js' + webpack- tree shaking 搖樹優(yōu)化
?
    //commonJS 導(dǎo)入整個(gè)文件
9. 異步遍歷器生成函數(shù)(大廠面試)

Generator 函數(shù)返回一個(gè)同步遍歷器,異步 Generator 函數(shù)的作用,是返回一個(gè)異步遍歷器對象。在語法上,異步 Generator 函數(shù)就是async函數(shù)與 Generator 函數(shù)的結(jié)合。文章來源地址http://www.zghlxwxcb.cn/news/detail-823694.html

function timer(t) {
 ? ? ?return new Promise(resolve => {
 ? ? ? ? ?setTimeout(() => {
 ? ? ? ? ? ? ?resolve(t)
 ? ? ? ?  }, t)
 ? ?  })
 }
?
?
async function* fn() {
 ? ?yield timer(1000)//任務(wù)1
 ? ?yield timer(2000)//任務(wù)2
 ? ?yield timer(3000)//任務(wù)3
}
?
// 使用一下 for await ...of
async function fn1() {
 ? ?for await(const val of fn()) {
 ? ? ? ?console.log("start",Date.now())
 ? ? ? ?console.log(val);
 ? ? ? ?console.log("end",Date.now())
 ?  }
}
fn1();

到了這里,關(guān)于ES6-ES13用法(高頻面試題)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 第一章前端開發(fā)ES6基礎(chǔ)

    認(rèn)識ES6 概述 ES6表示ECMAScript規(guī)范的第六版,正式名稱為 ECMAScript 2015 ,ECMAScript是由ECMA國際標(biāo)準(zhǔn)組織制定的一項(xiàng) 腳本語言 的標(biāo)準(zhǔn)規(guī)范化,引入了許多新特性和語法。 其中包括 箭頭函數(shù)、let和const聲明、類、模板字符串、解構(gòu)賦值、參數(shù)默認(rèn)值、展開操作符、Promise 等等。這些

    2024年02月08日
    瀏覽(18)
  • 第二章前端開發(fā)ES6基礎(chǔ)

    目錄 擴(kuò)展運(yùn)算符 概述 語法 應(yīng)用 模板字符串 概述 應(yīng)用 內(nèi)置對象擴(kuò)展 概述 數(shù)組擴(kuò)展方法 字符串?dāng)U展方法 set數(shù)據(jù)結(jié)構(gòu) 概述 基本使用 操作方法 遍歷方法 認(rèn)識symbol 概述 作用 基本使用 項(xiàng)目 擴(kuò)展運(yùn)算符 概述 擴(kuò)展運(yùn)算符(spread operator)是 ES6 中新增的一種運(yùn)算符,用 三個(gè)點(diǎn)(

    2024年02月07日
    瀏覽(24)
  • 想成為開發(fā)程序員,這套es6面試題要掌握

    1、es5和es6的區(qū)別,說一下你所知道的es6 ECMAScript5,即ES5,是ECMAScript的第五次修訂,于2009年完成標(biāo)準(zhǔn)化ECMAScript6,即ES6,是ECMAScript的第六次修訂,于2015年完成,也稱ES2015ES6是繼ES5之后的一次改進(jìn),相對于ES5更加簡潔,提高了開發(fā)效率ES6新增的一些特性: 1)let聲明變量和const聲

    2024年02月08日
    瀏覽(23)
  • 13、Redis高頻面試題

    13、Redis高頻面試題

    我們項(xiàng)目中之所以選擇Redis,主要是因?yàn)镽edis有下面這些優(yōu)點(diǎn): 操作速度快:Redis的數(shù)據(jù)都保存在內(nèi)存中,相比于其它硬盤類的存儲,速度要快很多 數(shù)據(jù)類型豐富:Redis支持 string,list,set,Zset,hash 等數(shù)據(jù)類型,基本滿足我們開發(fā)中的各種使用場景 使用場景豐富:Redis可用于

    2024年02月02日
    瀏覽(14)
  • ES6——ES6相關(guān)面試題分享

    ES6——ES6相關(guān)面試題分享

    文章目錄 前言 一、什么是ES6,以及引入ES6的原因 二、let,var,const三者的區(qū)別。 三、運(yùn)用ES6如何合并兩個(gè)對象? 四、for...in 和for...of有什么區(qū)別。 五、?箭頭函數(shù)的this和普通函數(shù)的this的區(qū)別。 六、Es6中如何定義模板字符串,有什么好處。 七、Array的擴(kuò)展方法map和filter相同

    2024年02月15日
    瀏覽(22)
  • 【ES6】Promise.all用法

    【ES6】Promise.all用法

    Promise.all()方法用于將多個(gè) Promise 實(shí)例,包裝成一個(gè)新的 Promise 實(shí)例。 上面代碼中,Promise.all()方法接受一個(gè)數(shù)組作為參數(shù),p1、p2、p3都是 Promise 實(shí)例,如果不是,就會先調(diào)用下面講到的Promise.resolve方法,將參數(shù)轉(zhuǎn)為 Promise 實(shí)例,再進(jìn)一步處理。另外,Promise.all()方法的參數(shù)可以

    2024年02月09日
    瀏覽(17)
  • 【ES】筆記-ES6的函數(shù)rest參數(shù)用法

    es6中引入了rest參數(shù),樣式形如…xxx,用于獲取函數(shù)的多余參數(shù),這樣就不需要使用arguments對象了。rest參數(shù)搭配的一個(gè)變量是一個(gè)數(shù)組,該變量將多余的參數(shù)放入數(shù)組中。例如: 上面代碼的add函數(shù)是一個(gè)求和函數(shù),利用rest參數(shù),可以向該函數(shù)傳入任意數(shù)目的參數(shù)。 下面是一

    2024年02月13日
    瀏覽(14)
  • JavaScript ES6實(shí)現(xiàn)繼承

    JavaScript ES6實(shí)現(xiàn)繼承

    1 對象的方法補(bǔ)充 2 原型繼承關(guān)系圖 3 class方式定義類 4 extends實(shí)現(xiàn)繼承 5 extends實(shí)現(xiàn)繼承 6 多態(tài)概念的理 function 創(chuàng)建的名稱如果開頭是大寫的,那這個(gè)創(chuàng)建的不是函數(shù),是創(chuàng)建了類。 可以把class創(chuàng)建的類當(dāng)做是function創(chuàng)建的類的一種語法糖。但是在直接使用的方面是有不同之處

    2024年02月16日
    瀏覽(26)
  • 【JavaScript】數(shù)組方法 (ES6)

    arr.find(callback) 用于獲取第 1 個(gè)符合要求的元素: callback : (item, index, arr) = boolean item -當(dāng)前值、 index -當(dāng)前索引、 arr -當(dāng)前數(shù)組 返回值: callback 第一次返回 true 的對應(yīng) item ;如果沒有符合的元素,則返回 undefined arr.findIndex(callback) 用于獲取第 1 個(gè)符合要求的元素的下標(biāo): cal

    2024年02月14日
    瀏覽(26)
  • 9、ES高頻面試題

    倒排索引是搜索引擎的核心,它是一種像數(shù)據(jù)結(jié)構(gòu)一樣的散列圖,可將用戶從單詞導(dǎo)向文檔或網(wǎng)頁。主要目標(biāo)是快速從數(shù)百萬文件中查找數(shù)據(jù) 倒排索引主要體現(xiàn)在文檔的保存和查詢流程中 保存文檔時(shí),會先根據(jù)文檔進(jìn)行分詞,然后使用分好的詞條作為key進(jìn)行排序,然后將文

    2024年02月03日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包