久久影视这里只有精品国产,激情五月婷婷在线,久久免费视频二区,最新99国产小视频

        • 回答數(shù)

          2

        • 瀏覽數(shù)

          108

        李哈尼尼
        首頁(yè) > 工程師考試 > 前端工程師面試題及答案

        2個(gè)回答 默認(rèn)排序
        • 默認(rèn)排序
        • 按時(shí)間排序

        張壯壯zy

        已采納

        今天小編要跟大家分享的文章是關(guān)于2020年Web前端面試題匯總。由于內(nèi)容較多小編分開為大家介紹,今天首先來和小編一起看一看第一部分的內(nèi)容,希望這些面試題能夠?qū)φ郎?zhǔn)備找Web前端相關(guān)工作的小伙伴們有所幫助。1.說幾條寫JavaScript的基本規(guī)范?1)不要在同一行聲明多個(gè)變量;2)請(qǐng)使用===/!==來比較true/false或者數(shù)值;3)使用對(duì)象字面量替代newObject這種形式;4)減少使用全局函數(shù),全局變量;5)switch語(yǔ)句必須帶有default分支;6)if語(yǔ)句必須使用大括號(hào);7)for-in循環(huán)中的變量;應(yīng)該使用var關(guān)鍵字明確限定作用域;從而避免作用域全局污染。2.說說平衡二叉樹?平衡二叉搜索樹(Self-balancingbinarysearchtree)又被稱為AVL樹。具有以下性質(zhì):1)它是一棵空樹或它的左右兩個(gè)子樹的高度差的絕對(duì)值不超過1,并且左右兩個(gè)子樹都是一棵平衡二叉樹。2)平衡二叉樹必定是二叉搜索樹,反之則不一定。3)平衡二叉樹的常用實(shí)現(xiàn)方法有紅黑樹、AVL、替罪羊樹、Treap、伸展樹等。最小二叉平衡樹的節(jié)點(diǎn)的公式如下:F(n)=F(n-1)+F(n-2)+1備注:1是根節(jié)點(diǎn),F(xiàn)(n-1)是左子樹的節(jié)點(diǎn)數(shù)量,F(xiàn)(n-2)是右子樹的節(jié)點(diǎn)數(shù)量。3.清除浮動(dòng)和解決垂直外邊距重疊的解決方案?問題描述:1)父元素沒有設(shè)置寬高,尺寸由子元素?fù)纹?子元素一旦浮動(dòng),父元素高度會(huì)發(fā)生塌陷。2)子元素設(shè)置margin-top會(huì)作用的父元素的margin-top;此時(shí)會(huì)造成垂直外邊距重疊。.clearfix::after,.clearfix::before{content:'';display:table;clear:both;}、localStorage和cookie?相同點(diǎn):都用于瀏覽器端存儲(chǔ)的緩存數(shù)據(jù);不同點(diǎn):1)存儲(chǔ)內(nèi)容是否發(fā)送到服務(wù)器端當(dāng)設(shè)置了Cookie后,數(shù)據(jù)會(huì)發(fā)送到服務(wù)器端,造成一定的寬帶浪費(fèi);xxxstorage則會(huì)將數(shù)據(jù)保存到本地,不會(huì)造成寬帶浪費(fèi);2)數(shù)據(jù)存儲(chǔ)大小不同Cookie數(shù)據(jù)不能超過4K,適用于會(huì)話標(biāo)識(shí);xxxstorage數(shù)據(jù)存儲(chǔ)可以達(dá)到5M;3)數(shù)據(jù)存儲(chǔ)的有效期限不同cookie只在設(shè)置了Cookid過期時(shí)間之前一直有效,即使關(guān)閉窗口或者瀏覽器;sessionStorage,僅在關(guān)閉瀏覽器之前有效;localStorage,數(shù)據(jù)存儲(chǔ)永久有效;4)作用域不同cookie和localStorage是在同源同窗口中都是共享的;sessionStorage不在不同的瀏覽器窗口中共享,即使是同一個(gè)頁(yè)面;5.判斷一個(gè)單詞是否是回文?回文是指把相同的詞匯或句子,在下文中調(diào)換位置或顛倒過來,產(chǎn)生首尾回環(huán)的情景,叫做回文,也叫回環(huán)。比如cacac,redivider。letcheckPalindrom=(str)=>{returnstr===('').reverse().join('');}6.不借助臨時(shí)變量,進(jìn)行兩個(gè)整數(shù)的交換?輸入a=3,b=1,輸出a=1,b=3letswap=(a,b)=>{b=b-a;a=a+b;b=a-b;return[a,b];}7.請(qǐng)寫出至少5個(gè)html5新增的標(biāo)簽,并說明其語(yǔ)義和應(yīng)用場(chǎng)景?section:定義文檔中的一個(gè)章節(jié);nav:定義只包含導(dǎo)航鏈接的章節(jié);header:定義頁(yè)面或章節(jié)的頭部;它經(jīng)常包含logo、頁(yè)面標(biāo)題和導(dǎo)航性的目錄。footer:定義頁(yè)面或章節(jié)的尾部;它經(jīng)常包含版權(quán)信息、法律信息鏈接和反饋建議用的地址。aside:定義和頁(yè)面內(nèi)容關(guān)聯(lián)度較低的內(nèi)容,如果被刪除,剩下的內(nèi)容仍然很合理。和post請(qǐng)求在緩存方面的區(qū)別?get請(qǐng)求類似于查找的過程,用戶獲取數(shù)據(jù),可以不用每次都與數(shù)據(jù)庫(kù)連接,所以可以使用緩存。post不同,post做的一般是修改和刪除的工作,所以必須與數(shù)據(jù)庫(kù)交互,所以不能使用緩存。因此get請(qǐng)求適合于請(qǐng)求緩存。9.如何解決異步回調(diào)地獄?promise、generator、async/await10.圖片的懶加載和預(yù)加載?預(yù)加載:提前加載圖片,當(dāng)用戶需要查看時(shí)可直接從本地緩存中渲染。懶加載:懶加載的主要目的是作為服務(wù)器前端的優(yōu)化,減少請(qǐng)求數(shù)或延遲請(qǐng)求數(shù)。兩種技術(shù)的本質(zhì):兩者的行為是相反的,一個(gè)是提前加載,一個(gè)是遲緩甚至不加載。懶加載對(duì)服務(wù)器前端有一定的緩解壓力作用,預(yù)加載則會(huì)增加服務(wù)器前端壓力。,apply,call的區(qū)別?通過apply和call改變函數(shù)的this指向,這兩個(gè)函數(shù)的第一個(gè)參數(shù)都是一樣的,表示要改變指向的那個(gè)對(duì)象,第二個(gè)參數(shù),apply是數(shù)組,而call則是arg1,arg2...這種形式。通過bind改變this作用域會(huì)返回一個(gè)新的函數(shù),這個(gè)函數(shù)不會(huì)馬上執(zhí)行。怎么控制一次加載一張圖片,加載完后再加載下一張?方法一:varobj=newImage();"#/";(){("pic").innnerHTML="";}加載中

        前端工程師面試題及答案

        312 評(píng)論(15)

        ~*詩(shī)情畫意*~

        A. null B. [null] C. [{}] D. [{ name:"Lydia" }] 解析: 注:members被賦值的是person的指針; 正確答案:D A. f foo(){ foo =10; (foo)} B. 1 C. 10 D. undefined 解析: 具名的匿名函數(shù),函數(shù)名默認(rèn)指向其本身,且具有只讀屬性,函數(shù)會(huì)被當(dāng)作函數(shù)表達(dá)式而不是一個(gè)標(biāo)準(zhǔn)的函數(shù)聲明來處理,函數(shù)表達(dá)式意味著函數(shù)被直接綁定在作用域中,意味著foo只能在被自己代表的位置被調(diào)用,不會(huì)污染全局作用域。 正確答案:A 解析: 正確答案: 30 24 解析: 正確答案:undefined 10 20 A. { name: "Lydia",age: 21} , ["name","age"] B. { name: "Lydia",age: 21} , ["name"] C. { name: "Lydia"} , ["name","age"] D. { name: "Lydia"} , ["age"] 解析: 注: 是ES5提供的一種給對(duì)象定義屬性的方式,定義的屬性默認(rèn)不可以枚舉、遍歷,不可以刪除;可以使用set、get,定義屬性時(shí)觸發(fā)get,修改屬性值時(shí)觸發(fā)set,利用其可以實(shí)現(xiàn)數(shù)據(jù)雙向綁定。 返回的是數(shù)組,又因 定義的屬性默認(rèn)不可以枚舉、遍歷,所以只能返回對(duì)象的第一個(gè)關(guān)鍵字;如果想要實(shí)現(xiàn)遍歷,可以利用 enumerable:true 實(shí)現(xiàn)遍歷,如果想要修改或刪除,可以利用 configurable:true 實(shí)現(xiàn)。 正確答案:B A. "{"level":19,"health":90}" B. "{"username": "xiao ming"}" C. "["level","health"]" D. "{"username":"xiao ming","level":19,"health":90}" 解析: (value,replacer) 方法將一個(gè) JavaScript 對(duì)象或值轉(zhuǎn)換為 JSON 字符串,如果指定了一個(gè) replacer 函數(shù),則可以選擇性地替換值,或者指定的 replacer 是數(shù)組,則可選擇性地僅包含數(shù)組指定的屬性。 正確答案:A A. 20 , 40 , 80 , 160 B. 20 , 40 , 20 , 40 C. 20 , 20 , 20 , 40 D. NaN , NaN , 20 , 40 解析: 正確答案:C A. Calculated! 20 Calculated! 20 Calculated! 20 B. Calculated! 20 From cache! 20 Calculated! 20 C. Calculated! 20 From cache! 20 Form cache! 20 D. Calculated! 20 From cache! 20 Error 解析: 注:閉包函數(shù)定義: 當(dāng)一個(gè)函數(shù)的返回值是另外一個(gè)函數(shù),而返回的那個(gè)函數(shù)如果調(diào)用了其父函數(shù)內(nèi)部的其它變量,如果返回的這個(gè)函數(shù)在外部被執(zhí)行,就產(chǎn)生了閉包。 表現(xiàn)形式:使函數(shù)外部能夠調(diào)用函數(shù)內(nèi)部定義的變量。 正確答案:C A. ['apple','banana'] B. 2 C. true D. undefined 解析: 注:push()方法的返回值:把指定的值添加到數(shù)組后的新長(zhǎng)度 正確答案:B A. "I made it!" B. Promise {: "I made it!"} C. Promise {} D. undefined 解析: 注:promise ES6語(yǔ)法中的異步操作的API,每一個(gè)promise包含三種狀態(tài) pending(掛起)、 resolve(成功)、 reject(失?。?, 而在每一個(gè)promise對(duì)象包含then 和 catch兩個(gè)方法,then方法接收一個(gè)函數(shù),用于處理resolve成功方法,而catch方法接收一個(gè)函數(shù),用于處理reject失敗的方法。 正確答案:C

        137 評(píng)論(12)

        相關(guān)問答