成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

看看這些前端面試題,帶你搞定高頻知識(shí)點(diǎn)(六)

看看這些前端面試題,帶你搞定高頻知識(shí)點(diǎn)(六)

每天10道題,100天后,搞定所有前端面試的高頻知識(shí)點(diǎn),加油!!!,在看文章的同時(shí),希望不要直接看答案,先思考一下自己會(huì)不會(huì),如果會(huì),自己的答案是什么?想過之后再與答案比對(duì),是不是會(huì)更好一點(diǎn),當(dāng)然如果你有比我更好的答案,歡迎評(píng)論區(qū)留言,一起探討技術(shù)之美。

面試官:請(qǐng)你簡述 var、let、const 三者之間的區(qū)別?

我:呃~,好的,三者的作用區(qū)別總結(jié)如下:

var:最常用的變量;允許重復(fù)聲明,但會(huì)導(dǎo)致數(shù)據(jù)被覆蓋;會(huì)產(chǎn)生變量提升;局部變量掛載到全局對(duì)象上,會(huì)造成全局對(duì)象的污染。

console.log(a) // 因變量提升, var a;提到前面但是沒有賦值,所以值為undefined var a = 1 var a = '你好' // var聲明的變量會(huì)被重新賦值 console.log(a) // a會(huì)打印被重新賦值的值 console.log(window.a) // var聲明的局部變量會(huì)被掛載到全局變量上,造成全局變量的污染。
登錄后復(fù)制

let:es6新增命令,用法類似var;不允許重復(fù)聲明;不存在變量提升;常作用于塊級(jí)作用域而避免局部變量造成全局變量的污染。

let a=10; console.log(a) // 不存在變量提升,所以值為:10 console.log(window.a) // 不會(huì)造成全局污染,所以值為 undefined for(let i =0;i<3;i++){ // 會(huì)生成塊級(jí)作用域,i 的值只能在塊級(jí)作用域中使用     console.log(i) } console.log(i) // 因?yàn)槟貌坏綁K級(jí)作用域中的值,所以報(bào)錯(cuò)。
登錄后復(fù)制

const:es6新增命令,用于聲明常量且值無法被修改;聲明常量必須立刻初始化,否則后期賦值報(bào)錯(cuò);不能重復(fù)聲明;const指向變量的地址, 只要變量名所引用的地址不變就不會(huì)報(bào)錯(cuò)

const arr = ['小張','小王','小李','小趙'] arr[0]='小明' console.log(arr) // ['小明', '小王', '小李', '小趙'] const arr = [] // 報(bào)錯(cuò)
登錄后復(fù)制

面試官:請(qǐng)你談?wù)剬?duì)深拷貝與淺拷貝的理解

我:呃~,好的,對(duì)兩者的理解總結(jié)如下:

深拷貝:新數(shù)據(jù)與原數(shù)據(jù)互不打擾。

// 擴(kuò)展運(yùn)算符在一維數(shù)組中是屬于深拷貝,在多維數(shù)組中屬于淺拷貝 let arr = [1,2,3] let newArr = [...arr] newArr.push(4) console.log(arr,newArr) // [1, 2, 3],[1, 2, 3, 4]  // 深拷貝用法 let list = [     {id:1,name:'張三',age:18},     {id:2,name:'李四',age:28},     {id:3,name:'王五',age:38}, ] let newList = JSON.parse(JSON.stringify(list)) newList.pop() console.log(list.length,newList.length) // 3 2
登錄后復(fù)制

當(dāng)然,深拷貝也有一種標(biāo)準(zhǔn)寫法,如下:

// 標(biāo)準(zhǔn)的深拷貝 => 引用數(shù)據(jù)類型(數(shù)組,對(duì)象) function deepClone(source){     const targetObj = source.constructor === Array ? [] : {}     for(let keys in source){         if(source.hasOwnProperty(keys)){             // 引用數(shù)據(jù)類型             if(source[keys] && typeof source[keys] === 'object'){                 targetObj[keys] = source[keys].constructor === Array ? [] : {}                 // 遞歸                 targetObj[keys] = deepClone(source[keys])             }else{                 // 基本數(shù)據(jù)類型,直接賦值                 targetObj[keys] = source[keys]             }         }     }     return targetObj }  let obj = {     name:'張三',     age:18,     hobby:['抽煙','喝酒','燙頭'],     action:{         am:'敲代碼',         pm:'睡覺'     } } let newObj = deepClone(obj) newObj.name = '李四' console.log(obj.name,newObj.name)// 張三 李四
登錄后復(fù)制

淺拷貝:新數(shù)據(jù)會(huì)影響原數(shù)據(jù)。

let arr = [1,2,3] let newArr = arr // 對(duì)新數(shù)據(jù)做出改變,原數(shù)據(jù)也會(huì)發(fā)生改變,這種就叫做淺拷貝 newArr.push(4) // [1, 2, 3, 4] console.log(arr,newArr) // [1, 2, 3, 4]
登錄后復(fù)制

說白了,深拷貝是重新獲得一個(gè)新的數(shù)據(jù),且和原來的數(shù)據(jù)沒有任何關(guān)系;淺拷貝雖然能得到一個(gè)新的數(shù)據(jù),但是和原來的數(shù)據(jù)仍有一定的聯(lián)系。

面試官:輸入U(xiǎn)RL的那一瞬間瀏覽器做了什么?

我:呃~,URL是由以下幾部分組成

https: 傳輸協(xié)議(http和tcp之間加了一層 TSL 或者 SSL 的安全層)

www:服務(wù)器

baidu.com:域名

DNS域名系統(tǒng)會(huì)匹配真實(shí)的IP,第一次訪問正常,第二次訪問會(huì)將域名解析的IP存在本地用來讀取瀏覽器緩存。

輸入U(xiǎn)RL的那一刻經(jīng)歷了:域名 -> DNS域名系統(tǒng) -> 拿到真實(shí)IP -> 建立連接(TCP的三次握手) -> 拿數(shù)據(jù),渲染頁面 -> 四次揮手

具體實(shí)現(xiàn)過程

  • 1. url解析:判斷是搜索內(nèi)容還是請(qǐng)求URL

  • 2. 查找本地緩存:如果有緩存直接返回給頁面,沒有緩存則進(jìn)入網(wǎng)絡(luò)請(qǐng)求階段

  • 3. DNS解析

  • 4. 通過三次握手建立TCP連接

  • 5. 合成請(qǐng)求頭信息,發(fā)送http請(qǐng)求

  • 6. 處理響應(yīng)信息

  • 7. 通過四次揮手?jǐn)嚅_TCP連接

  • 8. 如果響應(yīng)狀態(tài)碼301,則重定向

  • 9. 瀏覽器進(jìn)行頁面渲染:1)解析html,生成DOM樹;2)根據(jù)css計(jì)算節(jié)點(diǎn)樣式,生成stylesheet;3)生成布局樹;4)為特定的元素生成獨(dú)立圖層

面試官:說一說cookie sessionStorage localStorage 區(qū)別?

我:呃~,好的,他們之間的關(guān)系如下:

相同點(diǎn)

都是瀏覽器存儲(chǔ),都存儲(chǔ)在瀏覽器本地。

區(qū)別

  • 1.cookie由服務(wù)器或前端寫入, sessionStorage以及l(fā)ocalStorage都是由前端寫入

  • 2.cookie的生命周期由服務(wù)器端寫入時(shí)就設(shè)置好的,localStorage是寫入就一直存在,除非手動(dòng)清除,sessionStorage是由頁面關(guān)閉時(shí)自動(dòng)清除

  • 3.cookie存儲(chǔ)空間大小約4kb, sessionStorage及l(fā)ocalStorage空間比較大,大約5M

  • 4.3者的數(shù)據(jù)共享都遵循同源原則,sessionStorage還限制必須是同一個(gè)頁面

  • 5.前端給后端發(fā)送請(qǐng)求時(shí),自動(dòng)攜帶cookie, session 及 local都不攜帶

  • 6.cookie一般存儲(chǔ)登錄驗(yàn)證信息或者token,localStorage常用于存儲(chǔ)不易變動(dòng)的數(shù)據(jù),減輕服務(wù)器壓力,sessionStorage可以用來監(jiān)測用戶是否是刷新進(jìn)入頁面,如音樂播放器恢復(fù)進(jìn)度條功能

面試官:說一說JS數(shù)據(jù)類型有哪些,區(qū)別是什么?

我:呃~,JS數(shù)據(jù)類型分為兩類:一類是基本數(shù)據(jù)類型,另一類是引用數(shù)據(jù)類型,如下:

  • 基本類型:string、number、boolean、null、undefined、symbol、bigInt

  • 引用類型: object、array

基本類型存儲(chǔ)在棧中,空間小,操作頻繁

引用類型存儲(chǔ)在堆中,空間大,在棧中存儲(chǔ)了指針,指向在堆中的起始地址

注意:Symbol具有唯一性, 不可枚舉 使用getOwnPropertySymbols獲取

面試官:說一說你對(duì)閉包的理解?

我:呃~,內(nèi)層函數(shù)引用外層函數(shù)中變量,這些變量的集合就是閉包。

  • 形成的原理:作用域鏈,當(dāng)前作用域可以訪問上級(jí)作用域中的變量。

  • 解決的問題:能夠讓函數(shù)作用域中的變量在函數(shù)執(zhí)行結(jié)束之后不被銷毀,同時(shí)也能在函數(shù)外部可以訪問函數(shù)內(nèi)部的局部變量。

  • 帶來的問題:由于垃圾回收器不會(huì)將閉包中變量銷毀,于是就造成了內(nèi)存泄露,內(nèi)存泄露積累多了就容易導(dǎo)致內(nèi)存溢出。

  • 閉包的應(yīng)用,能夠模仿塊級(jí)作用域,能夠?qū)崿F(xiàn)柯里化,在構(gòu)造函數(shù)中定義特權(quán)方法、Vue中數(shù)據(jù)響應(yīng)式Observer中使用閉包等。

面試官:說一說JavaScript有幾種方法判斷變量的類型?

我:呃~,好的,總結(jié)如下:

1. typeof(根據(jù)二進(jìn)制判斷),不能判斷數(shù)據(jù)類型:null和object

2. intanceof(根據(jù)原型鏈判斷),原生數(shù)據(jù)類型不能判斷

3. constructor.name(根據(jù)構(gòu)造器判斷),不能判斷null數(shù)據(jù)類型

4. Object.prototype.toString.call()(用Object的toString方法判斷)所有類型數(shù)據(jù)都能判斷,記住判斷結(jié)果打印為:'[object Xxx]'

面試官:說一說null 和 undefined 的區(qū)別,如何讓一個(gè)屬性變?yōu)閚ull

我:呃~,null 是定義 并賦值null undefined是定義未賦值。

面試官:說一下有什么方法可以保持前后端實(shí)時(shí)通信?

我:呃~,輪詢、長輪詢、 iframe流、WebSocket、SSE。

面試官:說一說偽數(shù)組和數(shù)組的區(qū)別?

我:呃~,好的,總結(jié)如下:

偽數(shù)組的特點(diǎn):類型是object、不能使用數(shù)組方法、可以獲取長度、可以使用for in遍歷

偽數(shù)組可以轉(zhuǎn)換為數(shù)組的方法:Array.prototype.slice.call()、Array.from()、[…偽數(shù)組]

哪些是偽數(shù)組:函數(shù)的參數(shù)arguments,Map和Set的keys()、values()和entires()

【推薦學(xué)習(xí):javascript高級(jí)教程】

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
AV在线播放无码线| 丰满多毛的大隂户BEST| 拔萝卜影视剧免费观看| 草莓丝瓜芭乐鸭脖奶茶发型| 妇女性内射冈站HDWWW000| 国产白嫩漂亮美女在线观看| 国产免费又爽又色又粗视频| 火车上荫蒂添的好舒服视频| 久久亚洲精品无码观看| 欧美乱强伦XXXXX高潮| 日本无人区码一码二码三码四码 | 国产精口品美女乱子伦高潮| 国产亚洲精品第一综合麻豆| 久久精品国产亚洲AV麻豆蜜芽| 内射少妇骚B一√| 日韩欧美人妻系列中文字幕一区二区三区| 特级做A爰片毛片免费看无码| 亚洲AV无码成人精品区狼人影院| 亚洲综合久久一区二区| 99无码熟妇丰满人妻啪啪| 大陆国语对白国产AV片| 国模GOGO中国人体私拍| 两个男人吮她的花蒂和奶水视频 | 精品少妇人妻AV无码专区| 毛片TV网站无套内射TV网站| 日本熟妇色XXXXX日本免费看| 无码人妻精品一区二区三区东京热 | 亚洲AV成人片无码www妖精| 亚洲最大成人综合网720P| ZOOMSERVO兽狗产品优势| 国产成人精品亚洲日本语言| 精品久久久无码人妻中文字幕豆芽| 免费无码成人AV片在线| 熟女系列丰满熟妇AV| 亚洲色成人www在线观看| XOXOXO性ⅩYY欧美69| 国产午夜精品理论片| 免费观看高清日本AⅤ| 熟妇人妻久久中文字幕麻豆网| 亚洲日韩AV成人无码| 办公室撕开奶罩吮奶在线观看| 国产午夜性春猛交ⅩXXX| 免费国精产品一品二品| 婷婷色香合缴缴情AV第三区| 阳茎伸入女人的阳道免费视频| 被两个男人按住吃奶好爽| 黑料社ZZTT.WIN免费观看| 欧美黑人性暴力猛交喷水| 无码精品人妻一区二区三区aV| 越看越湿的啪啪的小说免费| 国产AⅤ夜夜欢一区二区三区| 久久99精品国产99久久6尤物| 一本色道久久88加勒比—综合| CF穿越火线女去衣看奶| 国产麻豆天美果冻无码视频| 内射人妻无码色AV| 亚洲AV无码国产精品色午夜| JAPONENSISFES中国| 好硬好大好爽18禁免费看男男| 欧洲PAYPAL网站WWW| 亚洲国产精品久久久久蜜桃噜噜| 保守人妻精油按摩被强出| 久久97人妻无码一区二区三区| 日日躁狠狠躁死你H| 曰本女人牲交全视频播放毛片| 国产成人18黄网站| 女强人被春药精油按摩4| 亚洲AⅤ成人精品无码| WBBBB搡BBBB搡BBBB| 久久精品国产精品国产精品污| 色欲久久九色一区二区三区| 中文精品久久久久人妻不卡| 国产男女猛烈无遮挡免费视频网站 | 国产69精品久久久久999小说| 两毫米的小洞你却稳稳命中| 午夜美女裸体福利视频| JAPANESE熟女熟妇| 久久久WWW成人免费毛片| 无码专区3D动漫精品免费| 爆乳美女午夜福利视频| 老外又长又大插的太深了| 亚洲AⅤ男人的天堂在线观看| 边做饭边被躁BD小说| 麻豆三级电影无码| 亚洲精品无码午夜福利理论片| 高清国产亚洲精品自在久久| 欧美老熟妇乱人伦人妻| 夜先锋AV资源网站| 国内少妇偷人精品免费| 熟妇人妻无乱码中文字幕| JIZZJIZZ日本护士视频| 久久亚洲日韩成人无码| 亚洲VA中文字幕无码久久不卡| 囯产精品一区二区三区线| 欧洲肉欲K8播放毛片护士报告| 伊人色综合久久天天小片| 黑人精品XXX一区一二区| 无码纯肉视频在线观看| 超级YIN荡的公司聚会| 欧美丰满熟妇性XXXX| 在线观看成人无码中文AV天堂不| 精品爆乳一区二区三区无码AV| 我和亲妺妺乱的性视频| 成人网站在线进入爽爽爽 | 97超碰人人人人人人少妇| 久久久久久精品免费免费麻辣| 亚洲AV一二三区成人影片| 国产国产精品人在线观看| 日韩乱码人妻无码中文字幕久久| 99久热RE在线精品视频| 男女无遮挡XX00动态图120| 野花高清在线观看免费官网中文版| 国模GOGO中国人体私拍| 无套内射AV二区| 国产成人欧美一区二区三区| 人人妻人人澡人人爽人人精品图片| 97亚洲狠狠色综合久久| 美女扒开尿口让男人桶进| 影帝隔着内裤滑进去了H| 久久国产劲爆∧V内射| 亚洲精品乱码久久久久久V| 含羞草四叶草三叶草| 亚洲AV成人无码精品综合网站| 国产裸体XXXX视频在线播放| 无码熟妇人妻AⅤ在线电影| 国产成人无码A区在线| 少妇无码AV无码一区| 妇女AV中文精品字幕XXX| 少妇泬出白浆18P试看| 成人免费无码大片A毛片抽搐色欲 成人免费无码大片A毛片抽搐 | 亚洲色偷偷综合亚洲AV伊人蜜桃 | 亚洲国产AV无码专区亚洲AV| 国内揄拍高清国内精品对白| 亚洲AV永久无码精品九之| 娇喘潮喷抽搐高潮在线观看视频 | 太平公主秘史在线观看免费| 国产成人高清精品亚洲| 爽爽AV浪潮AV一区二区| 国产激情无码一区二区| 无人区一码二码三码区别在哪 | 午夜A级理论片在线播放不卡| 国产女人高潮抽搐喷水嗷嗷叫| 性色AV浪潮AV色欲AV| 精产国品一二三产品区别在 | AV人摸人人人澡人人超碰手机版| 欧美熟妇与小伙性欧美交| 啊轻点灬大JI巴太粗太长了欧美| 日韩AV在线一区二区| 跪趴式啪啪GIF动态图27报| 无码人妻丰满熟妇区BBBBXXXX| 国产无遮挡裸体免费视频| 亚洲爆乳无码专区| 久久久久久久极品内射| 中文字幕乱码一区二区三区免费| 欧美人与动牲猛交XXXXBBB| 成人国产精品一区二区网站公司 | 夜夜躁狠狠躁日日躁2022| 免费看成人AV片| YSL千人千色T9T9T9| 视频在线一区二区| 国产精品亚洲АV无码播放| 亚洲精品成人片在线观看精品| 久久久久亚洲AV无码专区网站| 999精品国产人妻无码系列| 日产乱码一二三区别视频| 国产精品久久久久久AV| 亚洲精品无码不卡| 男女高潮又爽又黄又无遮挡| 差差差很疼30分钟视频| 午夜DJ影院免费直播观看完整版| 精品无码国产污污污免费网站| 中国国产高清免费AV片| 人人妻人人澡人人爽人人蜜臀| 国产精品伦一区二区三级视频| 亚洲欧美日韩在线观看一区二区三| 免费人成视频X8X8入口| 初尝人妻少妇中文字幕| 亚洲AV无码专区色爱天堂| 毛茸茸的中国女BBW| 丰满熟女高潮毛茸茸欧洲视频| 亚洲AV无码久久精品蜜桃播放| 巨爆乳中文字幕爆乳区| 宝宝腿趴开一点就不会疼的原因| 无人区一码二码三码区别在哪| 久久夜色撩人精品国产小说| 被多人玩弄的烂货苏妖精| 小雪尝禁果又粗又大的动态视频| 久久无码人妻一区二区三区| 布丁漫画土豪漫画入口页面| 亚洲AV无码成人片在线观看| 免费观看高清日本AⅤ| 国产成人午夜福利不卡在线观看 | 暗呦交小U女国产精品视频| 无码人妻一区二区三区精品视频| 久久香综合精品久久伊人 | 日韩AⅤ人妻无码一区二区| 狠狠爱天天综合色欲网| ZOOM另一类ZZO0| 亚洲精品无码AV人在线观看国产| 人妻少妇精品无码专区APP|