国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

前端面試題目匯總

lastSeries / 3079人閱讀

摘要:線程在執(zhí)行過程中與進(jìn)程還是有區(qū)別的。但是線程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個(gè)線程執(zhí)行控制。從邏輯角度來看,多線程的意義在于一個(gè)應(yīng)用程序中,有多個(gè)執(zhí)行部分可以同時(shí)執(zhí)行。

關(guān)于js

1.原型鏈
2.AJAX請求數(shù)據(jù)時(shí)解決緩存的辦法
3.js的繼承
4.簡單談?wù)勈录芭莺褪录东@
5.閉包什么時(shí)候會(huì)用到有什么好處
6.三目運(yùn)算符
7.圖表的使用
8.AJAX跨域如何解決
9.談?wù)凱romise的理解
10.遞歸
11.ES6

關(guān)于前端框架

1.angular和jquery有什么區(qū)別
2.三大框架的區(qū)別和特性,項(xiàng)目案列VUE REACT ANGULAR
3.三大框架實(shí)戰(zhàn)演練
4.angular路由
5.倆個(gè)angular之間如何傳值
6.VUE的寫法

關(guān)于JAVASCRIPT自動(dòng)化構(gòu)建工具

1.GULP GRUNT WEBPACK的了解
2.搭建項(xiàng)目步驟的演示

移動(dòng)端兼容性問題

1.IE opacity不起作用解決辦法
2.Placeholder不起作用解決辦法
3.input被鍵盤遮擋解決辦法
4.audio在微信里音樂無法自動(dòng)播放

關(guān)于CSS3 HTML5

1.CSS3 HTML5新屬性
2.LESS SASS和css的區(qū)別
3.rem和px的區(qū)別
4.微信登錄 第三方支付 分享
5.地圖 Geolocation
6.WEbsockt

關(guān)于版本控制系統(tǒng) 1.GIT 更新/提交代碼

cd kake/ 項(xiàng)目名

sh.git

pull/push

update_1/描述用英文并用下劃線分割
注: 更新之前可使用git status查看是否有修改,git diff查看所修改文件

更新完 source下面 npm run all

修改host文件

sudo vim /ect/hosts

i 鍵盤修改

Esc :

wq 保存并退出

解決沖突

CONFLICT
cd 目錄名
git add 文件沖突路徑
kake/frontend/less/detail/index.less

2.SVN

關(guān)于數(shù)據(jù)結(jié)構(gòu)與算法## box-sizing: border-box的作用

當(dāng)你設(shè)置一個(gè)元素為 box-sizing: border-box; 時(shí),此元素的內(nèi)邊距和邊框不再會(huì)增加它的寬度。
例如:

舉個(gè)例子

.box {

width: 500px;     
height:100px;  
border: 1px solid #000;
-webkit-box-sizing: border-box;     
    -moz-box-sizing: border-box;
              box-sizing: border-box;

}
如果這時(shí)候你加上一個(gè)內(nèi)邊距屬性,padding: 10px;
這個(gè)div不會(huì)撐開,即你所見的邊框位置沒有任何變動(dòng),但是“舉個(gè)例子”這句話會(huì)和div邊框有10px的間距。
一般在寫頁面的時(shí)候用這個(gè)屬性就不會(huì)再考慮邊框和內(nèi)邊距會(huì)改變整體所占寬度,即不用再根據(jù)盒子模型再去計(jì)算,省去很多麻煩。

在不使用第三個(gè)變量的情況下使倆個(gè)變量的值互換

算術(shù)運(yùn)算
int a,b;
a=10;b=12;
a=b-a; //a=2;b=12
b=b-a; //a=2;b=10
a=b+a; //a=10;b=10
它的原理是:把a(bǔ)、b看做數(shù)軸上的點(diǎn),圍繞兩點(diǎn)間的距離來進(jìn)行計(jì)算。
具體過程:第一句“a=b-a”求出ab兩點(diǎn)的距離,并且將其保存在a中;第二句“b=b-a”求出a到原點(diǎn)的距離(b到原點(diǎn)的距離與ab兩點(diǎn)距離之差),并且將其保存在b中;第三句“a=b+a”求出b到原點(diǎn)的距離(a到原點(diǎn)距離與ab兩點(diǎn)距離之和),并且將其保存在a中。完成交換。
此算法與標(biāo)準(zhǔn)算法相比,多了三個(gè)計(jì)算的過程,但是沒有借助臨時(shí)變量。(以下稱為算術(shù)算法)

this的指向:

1、作為普通函數(shù)調(diào)用(this指向全局對象window對象)
2、作為對象的方法調(diào)用(this指向該對象)
3、構(gòu)造器調(diào)用(this指向用new返回的這個(gè)對象)
4、call、apply、bind的調(diào)用(this指向第一個(gè)參數(shù)對象)

new操作符具體干了什么呢?

1、創(chuàng)建一個(gè)新對象
2、將構(gòu)造函數(shù)的作用域賦給新對象(因此this就指向了這個(gè)新對象)
3、執(zhí)行構(gòu)造函數(shù)中的代碼(為這個(gè)新對象添加屬性)
4、返回新對象

null和undefined的區(qū)別?

1、null是一個(gè)表示”無”的對象,轉(zhuǎn)為數(shù)值時(shí)為0;undefined是一個(gè)表示”無”的原始值,轉(zhuǎn)為數(shù)值時(shí)為NaN。
2、undefined表示”缺少值”,就是此處應(yīng)該有一個(gè)值,但是還沒有定義。
3、null表示”沒有對象”,即該處不應(yīng)該有值。

call、apply、bind的區(qū)別

三者都是用來改變函數(shù)的this對象的指向的。
三者第一個(gè)參數(shù)都是this要指向的對象,也就是想指定的上下文。
call 傳入的參數(shù)數(shù)量不固定,第二部分參數(shù)要一個(gè)一個(gè)傳,用,隔開。
apply 接受兩個(gè)參數(shù),第二個(gè)參數(shù)為一個(gè)帶下標(biāo)的集合,可以為數(shù)組,也可以為類數(shù)組。
bind 是返回一個(gè)改變了上下文的函數(shù)副本,便于稍后調(diào)用;apply 、call 則是立即調(diào)用 。
本地存儲(chǔ)

sessionStorage和localStorage的區(qū)別

sessionStorage用于本地存儲(chǔ)一個(gè)會(huì)話(session)中的數(shù)據(jù),這些數(shù)據(jù)只有在同一個(gè)會(huì)話中的頁面才能訪問并且當(dāng)會(huì)話結(jié)束后數(shù)據(jù)也隨之銷毀。因此sessionStorage不是一種持久化的本地存儲(chǔ),僅僅是會(huì)話級(jí)別的存儲(chǔ)。
localStorage用于持久化的本地存儲(chǔ),除非主動(dòng)刪除數(shù)據(jù),否則數(shù)據(jù)是永遠(yuǎn)不會(huì)過期的。
具體參見:本地存儲(chǔ)sessionStorage與localStorage

cookie 和session

1、cookie數(shù)據(jù)存放在客戶的瀏覽器上,session數(shù)據(jù)放在服務(wù)器上。
2、cookie不是很安全,別人可以分析存放在本地的COOKIE并進(jìn)行COOKIE欺騙,考慮到安全應(yīng)當(dāng)使用session。
3、session會(huì)在一定時(shí)間內(nèi)保存在服務(wù)器上。當(dāng)訪問增多,會(huì)比較占用你服務(wù)器的性能,考慮到減輕服務(wù)器性能方面,應(yīng)當(dāng)使用COOKIE。
4、單個(gè)cookie保存的數(shù)據(jù)不能超過4K,很多瀏覽器都限制一個(gè)站點(diǎn)最多保存20個(gè)cookie。每次請求一個(gè)新的頁面的時(shí)候Cookie都會(huì)被發(fā)送過去,與服務(wù)器進(jìn)行交互。

XML和JSON的區(qū)別?

1、數(shù)據(jù)體積方面。
JSON相對于XML來講,數(shù)據(jù)的體積小,傳遞的速度更快些。
2、數(shù)據(jù)交互方面。
JSON與JavaScript的交互更加方便,更容易解析處理,更好的數(shù)據(jù)交互。
3、數(shù)據(jù)描述方面。
JSON對數(shù)據(jù)的描述性比XML較差。
4、傳輸速度方面。
JSON的速度要遠(yuǎn)遠(yuǎn)快于XML。

如何實(shí)現(xiàn)瀏覽器內(nèi)多個(gè)標(biāo)簽頁之間的通信?

調(diào)用localstorge、cookies等本地存儲(chǔ)方式

線程與進(jìn)程的區(qū)別

1、一個(gè)程序至少有一個(gè)進(jìn)程,一個(gè)進(jìn)程至少有一個(gè)線程.
2、線程的劃分尺度小于進(jìn)程,使得多線程程序的并發(fā)性高。
3、進(jìn)程在執(zhí)行過程中擁有獨(dú)立的內(nèi)存單元,而多個(gè)線程共享內(nèi)存,從而極大地提高了程序的運(yùn)行效率。
4、線程在執(zhí)行過程中與進(jìn)程還是有區(qū)別的。每個(gè)獨(dú)立的線程有一個(gè)程序運(yùn)行的入口、順序執(zhí)行序列和程序的出口。但是線程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個(gè)線程執(zhí)行控制。
5、從邏輯角度來看,多線程的意義在于一個(gè)應(yīng)用程序中,有多個(gè)執(zhí)行部分可以同時(shí)執(zhí)行。但操作系統(tǒng)并沒有將多個(gè)線程看做多個(gè)獨(dú)立的應(yīng)用,來實(shí)現(xiàn)進(jìn)程的調(diào)度和管理以及資源分配。這就是進(jìn)程和線程的重要區(qū)別。

漸進(jìn)增強(qiáng)和優(yōu)雅降級(jí)

漸進(jìn)增強(qiáng) :針對低版本瀏覽器進(jìn)行構(gòu)建頁面,保證最基本的功能,然后再針對高級(jí)瀏覽器進(jìn)行效果、交互等改進(jìn)和追加功能達(dá)到更好的用戶體驗(yàn)。

優(yōu)雅降級(jí) :一開始就構(gòu)建完整的功能,然后再針對低版本瀏覽器進(jìn)行兼容。

性能優(yōu)化

網(wǎng)頁內(nèi)容
減少 http請求次數(shù)
減少 DNS查詢次數(shù)
避免頁面跳轉(zhuǎn)
緩存 Ajax
延遲加載
提前加載
減少 DOM元素?cái)?shù)量
避免 404
服務(wù)器
使用CDN(內(nèi)容分發(fā)網(wǎng)絡(luò))
添加Expires或Cache-Control報(bào)文頭
Gzip壓縮傳輸文件
CSS
將樣式表置頂
用代替@import
JavaScript
把腳本置于頁面底部
使用外部JavaScript和CSS
精簡JavaScript和CSS
去除重復(fù)腳本
減少DOM訪問
圖片
優(yōu)化圖像
優(yōu)化CSS Spirite
不要在HTML中縮放圖片
favicon.ico要小而且可緩存

如何解決跨域問題?

jsonp、CORS、document.domain+iframe、window.name、window.postMessage

jsonp的原理就是利用了

閱讀需要支付1元查看
<