*旗
英文介紹
Good afternoon梅肤,I am very glad to be here for this interview. First let me introduce myself. My name is xxx,bachelor degree 诺凡,majored in 大學(xué)的專(zhuān)業(yè). I am mainly good at technology about 自己的技術(shù)羅列赔蒲,that's all脖阵,thanks.
Http和https區(qū)別
HTTP協(xié)議是一種使用明文數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)協(xié)議烫葬。
HTTPS協(xié)議可以理解為HTTP協(xié)議的升級(jí)牺陶,就是在HTTP的基礎(chǔ)上增加了數(shù)據(jù)加密丙唧。
http1.0和2.0的區(qū)別
http1.0和http1.1的主要區(qū)別如下:
1愈魏、緩存處理:1.1添加更多的緩存控制策略(如:Entity tag,If-Match)
2想际、網(wǎng)絡(luò)連接的優(yōu)化:1.1支持?jǐn)帱c(diǎn)續(xù)傳
3培漏、錯(cuò)誤狀態(tài)碼的增多:1.1新增了24個(gè)錯(cuò)誤狀態(tài)響應(yīng)碼,豐富的錯(cuò)誤碼更加明確各個(gè)狀態(tài)
4沼琉、Host頭處理:支持Host頭域北苟,不在以IP為請(qǐng)求方標(biāo)志
5、長(zhǎng)連接:減少了建立和關(guān)閉連接的消耗和延遲打瘪。
http1.1和http2.0的主要區(qū)別:
1友鼻、新的傳輸格式:2.0使用二進(jìn)制格式,1.0依然使用基于文本格式
2闺骚、多路復(fù)用:連接共享彩扔,不同的request可以使用同一個(gè)連接傳輸(最后根據(jù)每個(gè)request上的id號(hào)組合成正常的請(qǐng)求)
3、header壓縮:由于1.X中header帶有大量的信息僻爽,并且得重復(fù)傳輸虫碉,2.0使用encoder來(lái)減少需要傳輸?shù)膆earder大小
4、服務(wù)端推送:同google的SPDUY(1.0的一種升級(jí))一樣
原文鏈接:https://blog.csdn.net/weixin_44489066/java/article/details/88640088
方法實(shí)現(xiàn)數(shù)據(jù)加減排查,不正確拋出錯(cuò)誤
一個(gè)班級(jí)男同學(xué)按照成績(jī)從高到低排序,女同學(xué)按照從高到低排序
forEach 和map的區(qū)別
- 沒(méi)有辦法終止或者跳出forEach()循環(huán)胸梆,除非拋出異常敦捧,所以想執(zhí)行一個(gè)數(shù)組是否滿足什么條件,返回布爾值碰镜,可以用一般的for循環(huán)實(shí)現(xiàn)兢卵,或者用Array.every()或者Array.some();
- map()返回一個(gè)新數(shù)組,原數(shù)組不會(huì)改變绪颖。
Margin重疊
1秽荤、水平邊距永遠(yuǎn)不會(huì)重合。
2柠横、在規(guī)范文檔中窃款,2個(gè)或以上的塊級(jí)盒模型相鄰的垂直margin會(huì)重疊。最終的margin值計(jì)算方法如下:
a牍氛、全部都為正值晨继,取最大者;
b搬俊、不全是正值紊扬,則都取絕對(duì)值曲饱,然后用正值減去最大值;
c珠月、沒(méi)有正值,則都取絕對(duì)值楔敌,然后用0減去最大值啤挎。
盒子模型:
margin padding border content
一個(gè)div里6個(gè)元素排列2行,第一行4個(gè),兩邊對(duì)齊,第二行2個(gè)左邊對(duì)齊
vue中路由鉤子
第一種:全局鉤子函數(shù)。
router.beforeEach((to, from, next) => {
console.log('beforeEach')
//next() //如果要跳轉(zhuǎn)的話卵凑,一定要寫(xiě)上next()
//next(false) //取消了導(dǎo)航
next() //正常跳轉(zhuǎn)庆聘,不寫(xiě)的話,不會(huì)跳轉(zhuǎn)
})
router.afterEach((to, from) => { // 舉例: 通過(guò)跳轉(zhuǎn)后改變document.title
if( to.meta.title ){
window.document.title = to.meta.title //每個(gè)路由下title
}else{
window.document.title = '默認(rèn)的title'
}
})
第二種:針對(duì)單個(gè)路由鉤子函數(shù)
beforeEnter(to, from, next){
console.log('beforeEnter')
next() //正常跳轉(zhuǎn)勺卢,不寫(xiě)的話伙判,不會(huì)跳轉(zhuǎn)
}
第三種:組件級(jí)鉤子函數(shù)
beforeRouteEnter(to, from, next){ // 這個(gè)路由鉤子函數(shù)比生命周期beforeCreate函數(shù)先執(zhí)行,所以this實(shí)例還沒(méi)有創(chuàng)建出來(lái)
console.log("beforeRouteEnter")
console.log(this) //這時(shí)this還是undefinde黑忱,因?yàn)檫@個(gè)時(shí)候this實(shí)例還沒(méi)有創(chuàng)建出來(lái)
next((vm) => { //vm,可以這個(gè)vm這個(gè)參數(shù)來(lái)獲取this實(shí)例,接著就可以做修改了
vm.text = '改變了'
})
},
beforeRouteUpdate(to, from, next){//可以解決二級(jí)導(dǎo)航時(shí)宴抚,頁(yè)面只渲染一次的問(wèn)題,也就是導(dǎo)航是否更新了甫煞,是否需要更新
console.log('beforeRouteUpdate')
next();
},
beforeRouteLeave(to, from, next){// 當(dāng)離開(kāi)組件時(shí)菇曲,是否允許離開(kāi)
next()
}
cookie和localstorage區(qū)別
一、容量
cookie容量在4K左右抚吠,且有條數(shù)限制常潮。localStorage的容量有5M。
二楷力、是否向服務(wù)器發(fā)送數(shù)據(jù)
cookie會(huì)向服務(wù)器發(fā)送數(shù)據(jù)喊式,localStorage不會(huì)往服務(wù)器發(fā)送數(shù)據(jù)。
三萧朝、過(guò)期時(shí)間
cookie的有過(guò)期時(shí)間岔留,在沒(méi)有設(shè)置過(guò)期時(shí)間,關(guān)閉瀏覽器就消失剪勿,默認(rèn)過(guò)期時(shí)間是一次會(huì)話贸诚。localStorage沒(méi)有過(guò)期時(shí)間。
四厕吉、路徑限制
cookie有路徑的限制酱固。localStorage沒(méi)有路徑的限制。
五头朱、存儲(chǔ)類(lèi)型
cookie存儲(chǔ)的是字符串运悲,字符串,字符串项钮。localStorage存儲(chǔ)的是對(duì)象班眯,對(duì)象希停,對(duì)象。
原型鏈
同步和異步的區(qū)別
異步基于js是單線程語(yǔ)言
異步不會(huì)阻塞代碼,同步會(huì)阻塞代碼進(jìn)行
前端異步的使用場(chǎng)景
New promise同步處理結(jié)果
解決回調(diào)地獄的問(wèn)題
promise.all處理多個(gè)請(qǐng)求