前端常見面試題(2)

1、清除浮動的方法有哪些舞竿?

為什么要清除浮動京景,因為浮動的盒子脫離標準流,如果父盒子沒有設置高度的話骗奖,下面的盒子就會撐上 來确徙。

1.額外標簽法(在最后一個浮動標簽后醒串,新加一個標簽,給其設置 clear:both鄙皇;)(不推薦)

2.父級添加 overflow 屬性(父元素添加 overflow:hidden)(不推薦)

3.使用 after 偽元素清除浮動(推薦使用)

.clearfix:after{/*偽元素是行內(nèi)元素 正常瀏覽器清除浮動方法*/

? content: "";

? display: block;

? height: 0;

? clear:both;

? visibility: hidden;

}

.clearfix{

? *zoom: 1;/*ie6清除浮動的方式 *號只有IE6-IE7執(zhí)行芜赌,其他瀏覽器不執(zhí)行*/

4.使用 before 和 after 雙偽元素清除浮動

.clearfix:after,

.clearfix:before {

? content: '';

? display: table;

}

.clearfix:after {

? clear: both;

}

.clearfix {

? *zoom: 1;

}

2、this 的指向有哪些伴逸?

1较鼓、普通函數(shù)中的 this 指向 window

2、定時器中的 this 指向 window

3违柏、箭頭函數(shù)沒有 this,它的 this 指向取決于外部環(huán)境博烂、

4、事件中的 this 指向事件的調(diào)用者 黑馬程序員

5漱竖、 構(gòu)造函數(shù)中 this 和原型對象中的 this,都是指向構(gòu)造函數(shù) new 出來實例對象

6禽篱、類 class 中的 this 指向由 constructor 構(gòu)造器 new 出來的實例對象

7、自調(diào)用函數(shù)中的 this 指向 window

3馍惹、什么是遞歸躺率,遞歸有哪些優(yōu)點或缺點?

遞歸:如果一個函數(shù)在內(nèi)部可以調(diào)用其本身万矾,那么這個函數(shù)就是遞歸函數(shù)悼吱。簡單理解:函 數(shù)內(nèi)部自己調(diào)用自己, 這個函數(shù)就是遞歸函數(shù)

優(yōu)點:結(jié)構(gòu)清晰、可讀性強

缺點:效率低良狈、調(diào)用椇筇恚可能會溢出,其實每一次函數(shù)調(diào)用會在內(nèi)存棧中分配空間薪丁,而每個進程的棧的容 量是有限的遇西,當調(diào)用的層次太多時,就會超出棧的容量严嗜,從而導致棧溢出粱檀。->性能

4、什么是深拷貝漫玄、什么是淺拷貝茄蚯?

淺拷貝:創(chuàng)建一個新對象,這個對象有著原始對象屬性值的一份精確拷貝睦优。如果屬性是基本類型渗常,拷貝 的就是基本類型的值,如果屬性是引用類型刨秆,拷貝的就是內(nèi)存地址 凳谦,所以如果其中一個對象改變了這個 地址忆畅,就會影響到另一個對象衡未。(1.Object.assign()? ?2.concat()??3.擴展運算符? 4.slice()

深拷貝:會拷貝所有的屬性尸执,并拷貝屬性指向的動態(tài)分配的內(nèi)存。當對象和它所引用的對象一起拷貝時即 發(fā)生深拷貝缓醋。深拷貝相比于淺拷貝速度較慢并且花銷較大如失。拷貝前后兩個對象互不影響送粱。(1. 利用json數(shù)據(jù)和json字符串之間的轉(zhuǎn)換??2.$.extend()??3. 遞歸? 4.splice())

5褪贵、圖片懶加載是怎么實現(xiàn)的?

就是我們先設置圖片的 data-set 屬性(當然也可以是其他任意的抗俄,只要不會發(fā)送 http 請求就行了脆丁,作用 就是為了存取值)值為其圖片路徑,由于不是 src动雹,所以不會發(fā)送 http 請求槽卫。

然后我們計算出頁面 scrollTop 的高度和瀏覽器的高度之和, 如果圖片距離頁面頂端的坐標 Y(相對于整個頁面胰蝠,而不是瀏覽 器窗口)小于前兩者之和歼培,就說明圖片就要顯示出來了(合適的時機,當然也可以是其他情況)茸塞,

這時 候我們再將 data-set 屬性替換為 src 屬性即可躲庄。(懶加載是一種對網(wǎng)頁性能優(yōu)化的方式,比如當訪問一個頁面的時候钾虐,優(yōu)先顯示可視區(qū)域的圖片而不是一次性加載所有圖片噪窘,當需要顯示時,再發(fā)送圖片請求效扫,避免打開網(wǎng)頁時加載過多資源效览。

當一個網(wǎng)站的加載圖片過多時就需要懶加載的協(xié)助,頁面圖片多時荡短,在首次載入時一次性加載會耗費時間長丐枉,使用懶加載可以使頁面加載速度快、減輕服務器的壓力掘托、節(jié)省流量瘦锹。)

6、vue 中 computed 和 watch 的區(qū)別是什么闪盔?

computed計算屬性就是為了簡化 template 里面模版字符串的計算復雜度弯院、防止模版太過冗余。

它具有 緩存特性 computed 用來監(jiān)控自己定義的變量泪掀,該變量不在 data 里面聲明听绳,直接在 computed 里面定義,然后就 可以在頁面上進行雙向數(shù)據(jù)綁定展示出結(jié)果或者用作其他處理异赫;

watch主要用于監(jiān)控 vue 實例的變化椅挣,它監(jiān)控的變量當然必須在 data 里面聲明才可以头岔,它可以監(jiān)控一個 變量,也可以是一個對象鼠证,一般用于監(jiān)控路由峡竣、input 輸入框的值特殊處理等等,它比較適合的場景是 一個數(shù)據(jù)影響多個數(shù)據(jù)量九,它不具有緩存性

watch:監(jiān)測的是屬性值适掰, 只要屬性值發(fā)生變化,其都會觸發(fā)執(zhí)行回調(diào)函數(shù)來執(zhí)行一系列操作荠列。

computed:監(jiān)測的是依賴值类浪,依賴值不變的情況下其會直接讀取緩存進行復用,變化的情況下才 會重新計算肌似。

除此之外戚宦,有點很重要的區(qū)別是:計算屬性不能執(zhí)行異步任務,計算屬性必須同步執(zhí)行锈嫩。也就是說計算 屬性不能向服務器請求或者執(zhí)行異步任務受楼。如果遇到異步任務,就交給偵聽屬性呼寸。watch 也可以檢測 computed 屬性艳汽。

7、箭頭函數(shù)有哪些特征对雪,請簡單描述一下它河狐?

箭頭函數(shù)沒有自己的 this,this 指向定義箭頭函數(shù)時所處的外部執(zhí)行環(huán)境的 this

即使調(diào)用call/apply/bind也無法改變箭頭函數(shù)的 this 箭頭函數(shù)本身沒有名字箭頭函數(shù)不能 new瑟捣,會報錯

箭頭函數(shù)沒有 arguments馋艺,在箭頭函數(shù)內(nèi)訪問這個變量訪問的是外部執(zhí)行環(huán)境的 arguments箭頭函數(shù)沒有 prototype

8、post 和 get 請求有哪些區(qū)別迈套?

GET:一般用于信息獲取捐祠,使用 URL 傳遞參數(shù),對所發(fā)送信息的數(shù)量也有限制桑李,一般在 2000 個字符

POST:一般用于修改服務器上的資源踱蛀,對所發(fā)送的信息沒有限制。

GET 方式需要使用 Request.QueryString 來取得變量的值贵白,而 POST 方式通過 Request.Form 來獲取變量 的值率拒,也就是說 Get 是通過地址欄來傳值,而 Post 是通過提交表單來傳值禁荒。

然而猬膨,在以下情況中枝誊,請使用 POST 請求: 無法使用緩存文件(更新服務器上的文件或數(shù)據(jù)庫) 向服務器發(fā)送大量數(shù)據(jù)(POST 沒有數(shù)據(jù)量限制) 發(fā)送包含未知字符的用戶輸入時竭望,POST 比 GET 更穩(wěn)定也更可靠

9省撑、http 狀態(tài)碼分別代表什么意思乖阵?

1xx 表示 HTTP 請求已經(jīng)接受止剖,繼續(xù)處理請求

2xx 表示 HTTP 請求已經(jīng)處理完成(200)

3xx 表示把請求訪 問的 URL 重定向到其他目錄(304 資源沒有發(fā)生變化包雀,會重定向到本地資源)

4xx 表示客戶端出現(xiàn)錯誤 (403 禁止訪問般渡、404 資源不存在)

5xx 表示服務端出現(xiàn)錯誤

10蚕脏、BFC 是什么褐隆?

BFC(會計格式化上下文)污它,一個創(chuàng)建了新的 BFC 的盒子是獨立布局的,盒子內(nèi)元素的布局不會影響盒 子外面的元素庶弃。在同一個 BFC 中的兩個相鄰的盒子在垂直方向發(fā)生 margin 重疊的問題衫贬。

BFC 是值瀏覽器中創(chuàng)建了一個獨立的渲染區(qū)域,該區(qū)域內(nèi)所有元素的布局不會影響到區(qū)域外元素的布 局歇攻,這個渲染區(qū)域只對塊級元素起作用

11固惯、call、apply缴守、bind 三者的異同

共同點 : 都可以改變 this 指向;

不同點:call 和 apply會調(diào)用函數(shù), 并且改變函數(shù)內(nèi)部 this 指向.call 和 apply傳遞的參數(shù)不一樣,call 傳遞參數(shù)使用逗號隔開,apply 使用數(shù)組傳遞 bind 不會調(diào)用函數(shù), 可以改變函 數(shù)內(nèi)部 this 指向. 應用場景并不會立即執(zhí)行葬毫。(bind 是返回對應函數(shù),便于稍后調(diào)用屡穗;apply 贴捡、call 則是立即調(diào)用 。)

call 經(jīng)常做繼承.

apply 經(jīng)常跟數(shù)組有關系. 比如借助于數(shù)學對象實現(xiàn)數(shù)組最大值最小值

bind 不調(diào)用函數(shù),但是改變 this 指向. 比如改變定時器內(nèi)部的 this 指向

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末村砂,一起剝皮案震驚了整個濱河市烂斋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌础废,老刑警劉巖汛骂,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異评腺,居然都是意外死亡帘瞭,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門蒿讥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來图张,“玉大人,你說我怎么就攤上這事诈悍』雎郑” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵侥钳,是天一觀的道長适袜。 經(jīng)常有香客問我,道長舷夺,這世上最難降的妖魔是什么苦酱? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任售貌,我火速辦了婚禮,結(jié)果婚禮上疫萤,老公的妹妹穿的比我還像新娘颂跨。我一直安慰自己,他們只是感情好扯饶,可當我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布恒削。 她就那樣靜靜地躺著,像睡著了一般尾序。 火紅的嫁衣襯著肌膚如雪钓丰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天每币,我揣著相機與錄音携丁,去河邊找鬼。 笑死兰怠,一個胖子當著我的面吹牛梦鉴,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播揭保,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼尚揣,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了掖举?” 一聲冷哼從身側(cè)響起快骗,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎塔次,沒想到半個月后方篮,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡励负,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年藕溅,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片继榆。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡巾表,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出略吨,到底是詐尸還是另有隱情集币,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布翠忠,位于F島的核電站鞠苟,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜当娱,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一吃既、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧跨细,春花似錦鹦倚、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至云头,卻和暖如春捐友,著一層夾襖步出監(jiān)牢的瞬間淫半,已是汗流浹背溃槐。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留科吭,地道東北人昏滴。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像对人,于是被迫代替她去往敵國和親谣殊。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容