91aaa在线国内观看,亚洲AV午夜福利精品一区二区,久久偷拍人视频,久久播这里有免费视播

<strong id="fvuar"></strong>

  • <sub id="fvuar"><dl id="fvuar"><em id="fvuar"></em></dl></sub>

    1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

      手機(jī)站
      千鋒教育

      千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

      千鋒教育

      掃一掃進(jìn)入千鋒手機(jī)站

      領(lǐng)取全套視頻
      千鋒教育

      關(guān)注千鋒學(xué)習(xí)站小程序
      隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

      當(dāng)前位置:首頁  >  技術(shù)干貨  > 只有10%的開發(fā)人員可以解決這些JavaScript挑戰(zhàn)題

      只有10%的開發(fā)人員可以解決這些JavaScript挑戰(zhàn)題

      來源:千鋒教育
      發(fā)布人:wjy
      時(shí)間: 2022-10-13 16:18:17 1665649097

        我們已經(jīng)根據(jù)這些測驗(yàn)答案的統(tǒng)計(jì)數(shù)據(jù)發(fā)布了一篇包含最難主題的文章。為了識別這些主題,我們將所有已發(fā)布的測驗(yàn)按主題進(jìn)行劃分,它一共有15個(gè)主題,并計(jì)算每個(gè)主題的平均百分比。

        這個(gè)實(shí)驗(yàn)最有趣的地方在于,除了計(jì)算正確答案之外,我們還對 Javascript 最困難的方面進(jìn)行了調(diào)查,結(jié)果大相徑庭。

        在調(diào)查中,大部分受訪者回答他們最困難的話題是 Promises,而據(jù)統(tǒng)計(jì),Promises 僅排在第 4 位。

        我們應(yīng)該在每項(xiàng)任務(wù)旁邊留下關(guān)于正確答案百分比的注釋。你不應(yīng)該將此筆記視為恒定的并且 100% 反映現(xiàn)實(shí)。

        首先,新程序員每天都會回答我們發(fā)布的測驗(yàn)并更改統(tǒng)計(jì)數(shù)據(jù),文章中出現(xiàn)的所有數(shù)字都是在文章發(fā)表時(shí)確定的。

        其次,一些答案當(dāng)然是不小心猜到了,或者點(diǎn)錯(cuò)了地方等等。不過,在采訪了大量的 JS 開發(fā)人員之后,我們可以自信地說,這個(gè)統(tǒng)計(jì)數(shù)據(jù)清楚地反映了現(xiàn)實(shí)。

        那么,讓我們看看 TOP-5 最難的 JS 挑戰(zhàn)并進(jìn)行分析,劇透:只有 8% 的響應(yīng)者正確解決了 TOP-1 測驗(yàn)。

        Top-5、默認(rèn)函數(shù)參數(shù)和函數(shù)長度屬性,18% 的人回答正確

      JavaScript挑戰(zhàn)題1

        這里的關(guān)鍵點(diǎn)是函數(shù)的長度屬性應(yīng)該提供有關(guān)函數(shù)的元數(shù)的信息,該信息是作為她的正式定義參數(shù)的數(shù)量計(jì)算的。

        ES2015 中引入了默認(rèn)參數(shù)功能。在此之前,所有函數(shù)參數(shù)都被視為形式參數(shù),函數(shù)長度屬性用于返回所有函數(shù)參數(shù)編號。

        隨著默認(rèn)參數(shù)的引入,長度屬性的行為發(fā)生了變化。由于很明顯帶有默認(rèn)值的參數(shù)是可選的,所以這樣的參數(shù)不包括在函數(shù)的長度中。

        按照常識,默認(rèn)值參數(shù)后面的所有參數(shù)也是可選的。因此,它們也不包含在函數(shù)的長度屬性中。

        TOP-4、Object.defineProperty 方法及其默認(rèn)參數(shù),14% 的人回答正確

      JavaScript挑戰(zhàn)題2

        大多數(shù)受訪者對此測驗(yàn)的回答未定義。原因:不知道 Object.defineProperty() 方法是如何工作的。

        Object.defineProperty() 方法定義對象的新屬性,或修改對象的現(xiàn)有屬性。

        語法:

      JavaScript挑戰(zhàn)題3

        看這里:

        obj — 要在其上定義或修改屬性的對象。

        prop — 要定義或修改的屬性的名稱。

        descriptors — 屬性的描述符。

        有兩種類型的描述符:數(shù)據(jù)描述符(值、可寫、可枚舉、可配置)和訪問描述符(get 和 set)。在此示例的上下文中,我們對數(shù)據(jù)描述符感興趣。

        默認(rèn)情況下,使用 Object.defineProperty() 添加的屬性不可寫、不可枚舉且不可配置。

        可配置屬性指定是否可以從對象中刪除屬性,以及將來是否可以更改屬性描述符。如果為真,則該屬性將可用于刪除和修改其描述符,如果為假,則不可以修改。默認(rèn)設(shè)置為 false。

        因此,測驗(yàn)的正確答案是 intspirit,刪除該屬性的嘗試將被忽略。如果你在嚴(yán)格模式下運(yùn)行代碼,你會得到一個(gè)錯(cuò)誤:

      JavaScript挑戰(zhàn)題4

        Top-3、Array.map & parseInt,14% 的人回答正確

      JavaScript挑戰(zhàn)題5

        Array.map() 方法接受一個(gè)帶有 3 個(gè)參數(shù)的回調(diào)函數(shù)。我們只會對前兩個(gè)感興趣:值和索引。

        parseInt 函數(shù)有 2 個(gè)參數(shù):一個(gè)要轉(zhuǎn)換為數(shù)字的字符串和一個(gè)基數(shù)。

        所以在我們的例子中, parseInt 將使用以下參數(shù)調(diào)用:

      JavaScript挑戰(zhàn)題6

        要了解 parseInt 如何處理這些基數(shù),讓我們看一下 mdn 中的基數(shù)參數(shù)描述:

        radix — 2 到 36 之間的整數(shù),表示字符串的基數(shù)(數(shù)學(xué)數(shù)字系統(tǒng)中的基數(shù))。如果超出此范圍,該函數(shù)將始終返回 NaN。如果 是0 或未提供,JavaScript 假定如下:

        1). 如果輸入字符串以 0x 或 0X(零,后跟小寫或大寫 X)開頭,去除了前導(dǎo)空格和可能的 +/- 符號,則假定基數(shù)為 16,字符串的其余部分被解析為一個(gè)十六進(jìn)制數(shù)。

        2). 如果輸入字符串以任何其他值開頭,則基數(shù)為 10(十進(jìn)制)。

        根據(jù)這個(gè)定義,我們得到以下結(jié)果:

        parseInt('9', 0) -> radix 0 等同于沒有基數(shù)的調(diào)用。因?yàn)榈谝粋€(gè)參數(shù)不是以 0x 或 0X 開頭,所以 radix 將默認(rèn)為10 -> parseInt(‘9’, 10) -> 9

        parseInt('10', 1)-> 1 — 無效基數(shù)(超出范圍)-> NaN

        parseInt('11', 2) -> 2 — 有效基數(shù),二進(jìn)制中的 11 是 3 -> 3

        TOP-2、使用 Object.create 和 Object.assign 克隆對象。11% 的人回答正確

      JavaScript挑戰(zhàn)題7

        我們的頻道中有一系列測驗(yàn),專門討論 Object.assign 和 ...spread 運(yùn)算符的工作差異。對于任何對深度 JS 感興趣的人,我們強(qiáng)烈建議你解決所有這些問題。

        在每個(gè)測驗(yàn)下,你都會找到關(guān)于它是如何工作的詳細(xì)說明。這只是對本示例中的代碼如何工作的簡要描述,因?yàn)槭聦?shí)證明它是整個(gè)測驗(yàn)系列中的受訪者最困難的。

        所以..讓我們了解這個(gè)例子中發(fā)生了什么。

        1).將已驗(yàn)證屬性設(shè)置為 true 的用戶構(gòu)造函數(shù)及其實(shí)例被創(chuàng)建:

      JavaScript挑戰(zhàn)題8

        2).使用用戶對象作為原型創(chuàng)建管理對象。根據(jù) mdn網(wǎng)站的介紹:

        Object.create() 方法創(chuàng)建一個(gè)新對象,使用現(xiàn)有對象作為新創(chuàng)建對象的原型。

      JavaScript挑戰(zhàn)題9

        3). 創(chuàng)建了兩個(gè)克?。阂粋€(gè)使用 ...spread 運(yùn)算符,另一個(gè)使用 Object.assign:

      JavaScript挑戰(zhàn)題10

        你知道rest和spread算子的區(qū)別嗎?兩者都使用三個(gè)點(diǎn)(…),但這兩個(gè)運(yùn)算符不一樣。

        它們之間的主要區(qū)別在于,rest 運(yùn)算符的目標(biāo)是在擴(kuò)展運(yùn)算符將可迭代對象擴(kuò)展為單個(gè)元素時(shí),將其余一些提供的值放入一個(gè)數(shù)組中。

        4).查看驗(yàn)證的屬性是否被克隆:

      JavaScript挑戰(zhàn)題11

        admin 對象顯然將其驗(yàn)證屬性設(shè)置為 true,因?yàn)樗褂糜脩糇鳛槠湓?。但是,如你所見,沒有一個(gè)克隆具有經(jīng)過驗(yàn)證的屬性。這是因?yàn)?...spread 運(yùn)算符和 Object.assign 在克隆時(shí)都忽略了原型。

        這些對象的原型:

      JavaScript挑戰(zhàn)題12

        克隆一個(gè)對象,包括它的原型:

      JavaScript挑戰(zhàn)題13

        注意:__proto__ 只是 Web 瀏覽器中的強(qiáng)制功能,一般 JS 引擎中沒有。

        TOP-1、字符串函數(shù)和 instanceof 運(yùn)算符,8%的人回答正確

      JavaScript挑戰(zhàn)題14

        這是一百多個(gè)特別挑選的非平凡任務(wù)中最困難的一個(gè)任務(wù)。只有 2 個(gè)正確答案——其中一個(gè)是頻道管理員給出的,呵呵 :)

        有什么難的?

        如果你查看答案的統(tǒng)計(jì)數(shù)據(jù),你會發(fā)現(xiàn)受訪者的意見在兩個(gè)錯(cuò)誤答案之間大致相等。

        在本文發(fā)表時(shí)——38% 的開發(fā)人員認(rèn)為這兩個(gè)表達(dá)式都會返回 true,35% 的開發(fā)人員認(rèn)為只有第二個(gè)語句是true。下半場更接近了。

        可以假設(shè)那些回答該表達(dá)式的人

        ‘Hello’ instanceof String 為false,而 String(‘Hello’) instanceof String 為true,知道 instanceof 運(yùn)算符僅適用于對象,不適用于原語,但對 String 函數(shù)返回的內(nèi)容感到困惑。

        事實(shí)上,這兩種說法都是錯(cuò)誤的。因?yàn)椋?/p>

        instanceof 運(yùn)算符僅適用于對象。

        字符串文字“Hello”是原始的。

        非構(gòu)造函數(shù)上下文中的字符串調(diào)用(不使用 new 關(guān)鍵字調(diào)用)返回一個(gè)原始字符串。

        到這里,我就把這個(gè)5個(gè)問題分解完了,希望對你有用。

        總結(jié)

        關(guān)于JavaScript的挑戰(zhàn)學(xué)習(xí)測試題,其實(shí)有很多,我這里只是選取了一些看起來容易搞混出錯(cuò)的題目,希望你能從中學(xué)習(xí)到一些新東西。

      tags:
      聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
      10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
      請您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
      免費(fèi)領(lǐng)取
      今日已有369人領(lǐng)取成功
      劉同學(xué) 138****2860 剛剛成功領(lǐng)取
      王同學(xué) 131****2015 剛剛成功領(lǐng)取
      張同學(xué) 133****4652 剛剛成功領(lǐng)取
      李同學(xué) 135****8607 剛剛成功領(lǐng)取
      楊同學(xué) 132****5667 剛剛成功領(lǐng)取
      岳同學(xué) 134****6652 剛剛成功領(lǐng)取
      梁同學(xué) 157****2950 剛剛成功領(lǐng)取
      劉同學(xué) 189****1015 剛剛成功領(lǐng)取
      張同學(xué) 155****4678 剛剛成功領(lǐng)取
      鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
      董同學(xué) 138****2867 剛剛成功領(lǐng)取
      周同學(xué) 136****3602 剛剛成功領(lǐng)取
      相關(guān)推薦HOT
      大數(shù)據(jù)測試工程師需要具備哪些技能?

      一、理解大數(shù)據(jù)概念大數(shù)據(jù)測試工程師需要理解大數(shù)據(jù)的基本概念和原理,如分布式存儲、MapReduce、實(shí)時(shí)計(jì)算等。他們還需要了解如何處理大規(guī)模的...詳情>>

      2023-10-14 23:43:03
      為什么SpringBoot的 jar 可以直接運(yùn)行?

      一、JAR文件的結(jié)構(gòu)與執(zhí)行方式Spring Boot的JAR包是Java Archive的縮寫,它是一種壓縮文件格式,可以將Java項(xiàng)目的類文件、資源文件以及依賴庫等...詳情>>

      2023-10-14 23:01:49
      站群服務(wù)器是什么?

      站群服務(wù)器的含義與用途站群服務(wù)器主要用于支持站群,即由一組相互鏈接的網(wǎng)站組成的群體。這些網(wǎng)站通常由同一組織或個(gè)人擁有,并且經(jīng)常會互相鏈...詳情>>

      2023-10-14 22:46:12
      自編碼器是什么?

      一、自編碼器原理自編碼器的設(shè)計(jì)靈感源于神經(jīng)科學(xué)中關(guān)于感知系統(tǒng)的認(rèn)知原理,它的核心思想是將輸入數(shù)據(jù)經(jīng)過編碼過程,形成一個(gè)隱藏層的特征表示...詳情>>

      2023-10-14 22:41:10
      什么是云網(wǎng)融合?

      一、云網(wǎng)融合的定義云網(wǎng)融合是指將云計(jì)算與網(wǎng)絡(luò)技術(shù)相結(jié)合,實(shí)現(xiàn)資源的共享、業(yè)務(wù)的協(xié)同,將網(wǎng)絡(luò)與云端服務(wù)深度融合,提供更靈活、高效、安全的...詳情>>

      2023-10-14 22:31:47