1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        50道JavaScript詳解面試題,你需要了解一下

        共 4162字,需瀏覽 9分鐘

         ·

        2021-04-24 05:58

        英文 | https://javascript.plainenglish.io/50-questions-to-master-the-javascript-coding-interview-639d2ac12630

        翻譯 | web前端開發(fā)公眾號


        1、以下哪個先打?。?/span>

        答案是第二種情況(打印出queueMicroTask更好),因為來自queueMicroTask的任務(wù)在調(diào)用棧為空之后且在調(diào)用事件循環(huán)之前被調(diào)用,對于setTimeout而言,任務(wù)是eventQeue的一部分。

        2、控制臺輸出是什么?

        答案是輸出為10,因為將對象傳遞給函數(shù)時的對象相似,僅傳遞其值,而不傳遞對內(nèi)存位置的實際引用。這就是為什么更改僅影響函數(shù)范圍內(nèi)的參數(shù)的原因。

        3、控制臺輸出是什么?

        在這種情況下,由于我們兩次定義了相同的變量,因此,會在控制臺上引發(fā)錯誤。
        但是,如果我們使用var定義相同的變量,則控制臺將返回50 。同樣,在使用const定義變量時,我們將得到相同的錯誤。

        4、Line1和Line2的控制臺輸出是什么?

        在Line1中,我們有兩個相互比較的對象,并且它們都是唯一的,因此它將在控制臺上記錄為False。
        在Line2中,我們使用===運算符來檢查兩個字符串基元而不是字符串對象,因此我們得到True。

        5、控制臺輸出是什么,為什么?

        與之前的問題類似,我們比較了兩個唯一的對象。在這種情況下,只有一個唯一的對象,它具有兩個常量x和y,它們指向內(nèi)存中的唯一對象,并在控制臺上返回True。

        6、數(shù)組對象是JavaScript中的原始對象嗎?

        在JavaScript中,我們處理的大多數(shù)事物都是對象,類似地,數(shù)組只是JavaScript中的特殊對象,它們具有其他對象所沒有的屬性。

        7、以下函數(shù)的返回類型是什么?

        答案,是B,因為異步函數(shù)在JavaScript中返回Promises 。

        8、等待關(guān)鍵字會阻止應(yīng)用程序中的所有JavaScript代碼執(zhí)行,直到返回等待的Promises?

        答案是False,await關(guān)鍵字僅阻止執(zhí)行包含await關(guān)鍵字的特定函數(shù)內(nèi)的代碼。

        9、以下打印什么?

        JavaScript中的函數(shù)是對象,typeof name將輸出function。

        10、以下是用于打印“用戶名”的有效語法?

        以下語法是有效的,因為我們正在將異步函數(shù)的返回值傳遞給callback。

        11、typeof和instanceof之間沒有什么區(qū)別?

        typeof返回類型, instanceof返回布爾值。
        instanceof需要TypeScript,而typeof則不需要。
        typeof在右側(cè)使用變量名稱, instanceof在左側(cè)和右側(cè)使用值,而不是。
        答案是B,因為它們都不要求TypeScript,并且兩者都不是JavaScript固有的。

        12、滿足所有承諾后,以下哪個解決方案可以解決?

        答案是C,當(dāng)我們需要等待執(zhí)行直到所有的都被解決時,Promise.all()會非常有用。
        13、控制臺輸出是什么,為什么?

        在這種情況下,我們有&運算符,它與&&運算符完全不同。&是按位運算符,當(dāng)我們比較11和3時,它將與1011和0011的二進制相同。結(jié)果,只有都為1的位保持為1,返回的輸出為0011,它是3的二進制表示形式, 因此3記錄在控制臺上。

        14、Object。[[Prototype]]的值是什么?

        • Object
        • null
        • {}
        答案是null,因為默認值的對象。[[原型]為空,它會返回undefined在控制臺上。該對象位于原型鏈的頂部,當(dāng)瀏覽器查找訪問屬性的值時,它將遍歷原型鏈,直到找到該值或直到不再遍歷所有原型為止。

        15、空值合并運算符做什么?

        當(dāng)左側(cè)操作數(shù)為null或未定義時,它將返回右側(cè)操作數(shù)。

        16、getElementsByTagName是JavaScript函數(shù)嗎?

        不,getElementsByTagName是一個Web API函數(shù),就像普通的JS函數(shù)一樣可用。

        17、在JavaScript中使用事件委托時

        例如,當(dāng)我們必須偵聽頁面加載期間可能不存在的事件時,可以使用事件委托,并在父元素上提供事件處理程序并查看event.target。但是,如今,現(xiàn)代的前端框架和庫使此操作變得不必要了。

        18、以下哪一項不是內(nèi)置的JS錯誤類型?

        答案是E。

        19、以下哪一項不是有效的Promise方法?

        答案是A。

        20、創(chuàng)建字符串后,我們可以修改它嗎?

        不可以,因為字符串在JavaScript中是不可變的,指向字符串的變量可以分配給另一個字符串。

        21、承諾鏈中的嵌套捕獲可以捕獲在承諾鏈中向上拋出的錯誤嗎?

        不可以,嵌套是一種用于限制catch語句范圍的控制結(jié)構(gòu)。用簡單的話來說,嵌套的catch僅捕獲其作用域及其以下范圍內(nèi)的故障,而不捕獲嵌套范圍之外的鏈中較高的錯誤。

        22、控制臺輸出是什么,為什么?

        即使mymap.get({})是有效的語法,它也會在控制臺上返回undefined。因為set和get中的Object是內(nèi)存中兩個不同的空對象,因此getter不會返回值。

        23、控制臺輸出是什么,為什么?

        控制臺輸出將為Map {'a'=> 2,'b'=> 2,'c'=> 1},這意味著第二個映射中的所有相同鍵將覆蓋第一個映射中的鍵。

        24、括號符號可以像點符號一樣鏈接嗎?

        是的,可以,obj.prop1.prop2和obj ['prop1'] ['prop2']是等效的。

        25、for…in循環(huán)中會顯示什么類型的屬性?

        答案是B,可枚舉屬性。

        26、以下內(nèi)容是什么?

        控制臺輸出將為'Mohit',因為內(nèi)部函數(shù)有權(quán)訪問在外部作用域中聲明的變量。

        27、函數(shù)引用自身進行遞歸的三種方式是什么?

        該函數(shù)的名稱,一個指向該函數(shù)的范圍內(nèi)變量,并使用arguments.callee。

        28、JavaScript是否支持重載?

        不,JavaScript本身不支持重載,但TypeScript可以。但是,可以在JavaScript中通過在未將所有可能的參數(shù)都傳遞給函數(shù)時返回不同的輸出來執(zhí)行重載。

        29、return語句在數(shù)組的forEach循環(huán)中做什么?

        它不會返回任何內(nèi)容,并且如果你需要從循環(huán)中返回值,則永遠不要使用forEach循環(huán)。

        30、RegExp沒有任何屬性。那是對的嗎?

        不,RegExp具有許多屬性,例如.flags和.global。

        31、控制臺輸出是什么?

        控制臺輸出將為10和5,因為該函數(shù)在Promise中沒有異步的內(nèi)容,并且Promise同步解析。

        32、在瀏覽器下一次重畫顯示內(nèi)容之前,哪個函數(shù)會執(zhí)行指定的代碼塊?

        requestAnimationFrame()。

        33、為什么在導(dǎo)入模塊時使用別名?

        大多數(shù)時候,我們處理具有默認命名約定的簡單導(dǎo)入,除此之外,有時我們不得不處理名稱,因為有的名稱較長。在這種情況下,使用別名是有幫助的。

        34、使用縮減函數(shù)從數(shù)字數(shù)組中找到最小值。

        35、JavaScript中的子程序是什么?

        子例程是主例程中遇到的函數(shù),然后將其保存到對象并存儲以供以后使用。例如,執(zhí)行范圍(變量,參數(shù)等)與子例程一起存儲。

        36、我們可以使用eventHandlers剪切和復(fù)制來防止用戶將內(nèi)容從瀏覽器復(fù)制到剪貼板嗎?

        是的,這些事件處理程序是Web API的一部分。

        37、創(chuàng)建新對象的三種可能方法是什么?

        new Object()&Object.create()和文字符號,其中我們定義了像this-(const obj = {a:2})這樣的對象。

        38、控制臺輸出是什么,為什么?

        一個被分配到一個對象,b被分配給一個使用該擴展運算符,它意味著一個和b在技術(shù)上是相同的。
        c只是一個空對象。
        使用Object.assign()中,c現(xiàn)在被指定到一個,并且后來在這之后,我們改變的值X在一個作為2。
        控制臺輸出將為2,1,1。

        39、Object.freeze()的作用是什么?

        它防止添加新屬性。
        它可以防止更改對象的原型。
        它防止更改屬性的值。
        它防止更改屬性的可寫性。

        40、event.target與event.currentTarget有何不同?

        event.currentTarget隨著事件起泡而變化,event.target保持不變。

        41、Array sort()方法的默認排序是什么?

        按字符值從最小到最大。

        42、什么是比賽條件?

        當(dāng)兩個線程或異步進程必須完成自身操作以更新某些共享狀態(tài)時,否則將出現(xiàn)錯誤或不良結(jié)果。

        43、class關(guān)鍵字在JavaScript中有什么作用?

        使JavaScript更加面向?qū)ο笾皇钦Z法上,即使使用class關(guān)鍵字,JavaScript仍會使用原型繼承。

        44、 queueMicrotask隊列中的任務(wù)是在后進先出的基礎(chǔ)上執(zhí)行的。真的嗎?

        否,任務(wù)按照先進先出的順序執(zhí)行。

        45、什么是Shadow DOM API?

        陰影DOM API提供了一種隱藏的單獨的DOM,附加到不是通過正常的訪問元件JS DOM操作API。它提供Web組件的封裝。

        46、使用哪種方法將影子DOM樹附加到指定的元素,并返回對其ShadowRoot的引用?

        Element.attachShadow()。

        47、控制臺輸出是什么,為什么?

        它返回h,因為數(shù)組在JavaScript中是從零開始的,因此arr [2] [1]將可以訪問外部數(shù)組的第3個元素和內(nèi)部數(shù)組的第2個元素,從而得出值“ h”。

        48、window.localStorage和window.sessionStorage有什么區(qū)別?

        它們都將值對存儲在Web瀏覽器中,但是sessionStorage在瀏覽器關(guān)閉后會刪除存儲的值。

        49、!運算符返回一個布爾值。真的嗎?

        是的,例如,在if語句中,需要在評估中返回一個布爾值,例如if(a!== b)。

        50、JavaScript中的哪個ES6函數(shù)返回一個新數(shù)組?

        map()和filter()。



        瀏覽 40
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            白峰美羽一区二区三区 | aa,xx黄色 | 亚洲日本天堂 | 免费的又色又爽又黄的片捆绑美女 | 少妇性l交大片免费观看 | 爱搞搞电影网 | 亚洲AV成人无码www在线观看 | 亚洲天堂一区 | 黑人巨大精品欧美一区二区, | 四个黑人玩一个少妇四p |