小白前端面試(2) 校內選拔

2021-10-07 18:33:42 字數 2505 閱讀 7967

此次面試進行的也是一次前端方向的,整體上因為自己基礎知識掌握的還不是特別好,所以問的問題也沒有很深入,所以時間也比較短,接下來應該把基礎知識研究得透一點。

簡單介紹了一下學歷,和前端的學習情況。自己在這裡應該回答的不好,本科不是學這個的,措辭不是很好,應該盡量避免。其次是為什麼選擇前端的崗位這裡,也是回答的不夠完美,只是說為了找實習而學習前端。下去應該完善一下這個問題的回答。

固定寬高元素水平垂直居中: 通過margin平移元素整體寬度(包括padding等)的一半,使元素水平垂直居中。

未知寬高元素水平垂直居中:利用2d變換,在水平和垂直兩個方向都向反向平移寬高的一半,從而使元素水平垂直居中。transform: translate(-50%, -50%);

利用flex布局(display:flex):其中justify-content 用於設定或檢索彈性盒子元素在主軸(橫軸)方向上的對齊方式(center);而align-items屬性定義flex子項在flex容器的當前行的側軸(縱軸)方向上的對齊方式(center)。

在螢幕上水平垂直居中:常規的登入及註冊頁面都需要用到。要保證較好的相容性,還需要用到表布局。

這個是前端面試的必考題,回答的不是很好。

方法一:在最後乙個子元素新新增最後乙個冗餘元素,然後將其設定clear:both,這樣就可以清除浮動。

方法二:父級div定義 overflow: hidden;這種方案讓父容器形成了bfc(塊級格式上下文),而bfc可以包含浮動,通常用來           解決浮動父元素高度坍塌的問題。

方法三:利用:after和:before來在元素內部插入兩個元素塊,從而達到清除浮動的效果。

.clear

.clear:after

這個之前面試也是考過一次,這次還是回答的比較模糊。

(1)定義:函式 a 內部有乙個函式 b,函式 b 可以訪問到函式 a 中的變數,那麼函式 b 就是閉包。即有權訪問另乙個函式作用域變數的函式都是閉包。  

(2)意義就是讓我們可以間接訪問函式內部的變數。閉包是塊作用域(解決非同步迴圈輸出相同問題)

乙個變數在當前作用域沒有定義,但是被使用了,會向上級作用域,一層一層依次尋找,直到找到為止,如果到全域性作用域都沒有找到,則報錯xx is not defined

**作用域:全域性作用域(全域性都可以使用,如document物件)函式作用域(乙個函式中定義的只能在當前函式使用)塊級作用域(es新增)(塊:包含if while等包含大括號,在大括號外使用會報錯)

(3)應用場景:函式作為引數被傳遞(函式在乙個地方定義好之後,到另乙個地方去執行)

函式作為返回值被返回(函式定義好之後會被返回到另乙個地方執行)

(4)機制:當我們呼叫乙個閉包函式,在函式執行時,其上下文有個scope屬性,該屬性作為乙個作用域鏈包含有該函式被定義時所有外層的變數物件的引用,所以定義了閉包的函式雖然銷毀了,但是其變數物件依然被繫結在函式inner上,保留在記憶體中。

影響:變數會常駐記憶體,得不到釋放。因此閉包不要亂用,可能會影響效能

(5)注意:所有的自由變數的查詢,是在函式定義的地方,向上級作用域查詢,不是在執行的地方

原型鏈繼承;

建構函式繼承;

例項繼承;

組合繼承;

拷貝繼承;

寄生組合繼承

(1)父元件向子元件傳值

在元件的vue例項中,設定props物件,物件中的每個成員,都是父元件要傳遞的資料

在父元件中,把data使用v-bind繫結給子元件需要的資料(父元件訪問子元件:給子元件新增ref屬性;通過this.$refs.ref屬性值來訪問子元件,可以直接呼叫子元件的data和methods)

(2)子元件向父元件傳值

在子元件中繫結乙個事件

在事件對應的方法中,使用this.$emit()向父元件發出事件,引數為事件名

父元件使用v-on來監聽子元件傳遞的事件,將該事件繫結給某個方法

(子元件訪問父元件:通過this.$parent來訪問父元件;通過this.$root來訪問子元件)

(3)兄弟元件

a. 兄弟之間傳遞資料需要借助於事件中心,通過事件中心傳遞資料; 提供事件中心 var hub = new vue()

傳遞資料方,通過乙個事件觸發hub.$emit(方法名,傳遞的資料)

接收資料方,通過mounted(){} 鉤子中 觸發hub.$on()方法名

銷毀事件 通過hub.$off()方法名銷毀之後無法進行傳遞資料

b. 多級元件巢狀需要傳遞資料時,通常使用的方法是通過vuex。

c. 但如果僅僅是傳遞資料,而不做中間處理,使用 vuex 處理,未免有點大材小用。為此vue2.4 版本提供了另一種方法---               -$attrs/$listeners

d.方法六、$parent / $children與 ref

ref:如果在普通的 dom 元素上使用,引用指向的就是 dom 元素;如果用在子元件上,引用就指向元件例項

$parent / $children:訪問父 / 子例項

之後為什麼選擇前端的這個問題還是要再多思考思考措辭,要怎麼進行回答,回答的不是很好。干巴爹,繼續懷挺吧!

360前端面試 小白系列

無總結不面試 僅此記錄找實習的面試題,反思總結分享 經過同學介紹,我參加了360的前端暑期實習面試。下面是此次面試的總結和感悟。希望在下次面試的時候能夠發揮更好獲得乙份offer。一上來還是照常的自我介紹,我介紹了自己的學習經歷和學習前端的經歷,然後這部分自己說的內容比較多,接下來面試官小哥哥就從簡...

前端面試準備 2

1.一次完整的http事務是怎麼樣的過程?1 通過網域名稱尋找ip位址 瀏覽器會首先搜尋自己的瀏覽器快取裡面有沒有dns快取,如果找到則結束,裡面有網域名稱對應的ip位址。如果瀏覽器快取沒有找到,則會繼續往作業系統中查詢是否有dns快取,如果找到則結束,否則進行下一步。瀏覽器會向本地的dns服務提供...

前端面試題(2)

現在是23 05,俺還沒有洗漱,只為了讓俺的兩位美女同桌能夠背上新鮮出爐的周考題。馬冬梅好好背,蘿蔔加油。廢話不多說,開始更新!今天有點難受哦,bug多的不得了,一直解決不了還老是出現新的bug,還好我有用60年壽命換來的兩位同桌,是她們讓我有了堅持下去的動力,要不然變得和她們一樣可太慘了。廢話不多...