因為2017年就要回學校開始找工作了,必然免不了遇到各種面試問題,我先開個專欄記錄一下,就目前而言遇到的一些問題吧。
案例一: 背景,一家學校附近的小公司,因為頭腦發熱想去校外做點實習,于是去面試了這家公司。面試我的是一個程序員哥哥,后來加了他的QQ,但是我后來因為知道這家公司實質上是專門作外包的,即使通過了,后來也沒有去了。可能對于實習生的認知就是專門負責苦力活兒的吧,問了好幾個問題沒有答上來,也并沒有深究,可能對于實習生的考核也不嚴吧。這也算是我第一次去參與和前端技術相關的面試了。
記錄一下,那位程序員問的幾個問題: 1、有沒有做過移動端的開發? 后來知道他們現目前的業務是移動端的開發,所以才問我這個問題。說實話,我對于移動端的了解真的蠻少的,只用H5,再加上響應式布局開發過一個小玩意兒,然后其他大型框架就沒有接觸過了。
2、用沒用過Node.js 這個必然是用過的,用Node.js+mongoDB開發過后臺系統,用Socket.io寫過聊天室,寫過爬蟲….. 然后他問有沒有在實際項目中用nodejs處理后臺傳過來的參數? 這個我就納悶了,因為在我所參與的項目中,要么就是MVC,先寫靜態頁面,再用php或者jsp動態渲染;要么就是前后端分離,前端接收后臺發來的數據,再渲染到頁面中去,它這個我就納悶是怎么個意思。因為在知乎上看到過用NodeJS做數據轉接層,但是原理并不是很了解,因為我覺得那種只有在數據量龐大的情況下才會使用,而他們公司的小項目應該數據量還沒有達到那種地步吧。
3、接著,他又問我拿到數據怎么渲染的 我就說多半我用兩種框架,jquery和vue,之前用jquery,那就是操作dom,通過append、after,還有就是拼接html字符串,remove等等方法來渲染數據。 而用了vue之后,就像在寫php一樣,只要把綁定的data放到app頁面中或者是template中就可以了。每次請求新的數據只用更新data就可以了。 其實我覺得他問的問題都很白癡。
4、然后,他又問我拖拽事件,還讓我現場寫!! 我坐在電腦前一時半會被人盯著真的是寫不出來,而且我的電腦都是有提示的好嘛。 我就說我寫不出來,除非我一個自己默默寫,并且還有可能邊寫邊查資料。 他說那你說一下思路吧。 然后我就說,其實有兩種方法:一種是通過監聽鼠標的mouSEOver、mouseup、mousedown事件;另一種就是H5提供的拖拽事件。 前者是通過監聽mouseup,獲取坐標位置,然后mouseover不斷更新元素的坐標,mousedown之后就固定元素的坐標。 后者是需要一個拖拽元素和放置元素,首先需要設置這兩個的拖拽屬性為true,然后監聽拖拽元素的拖拽事件ondrag,以及放置事件就可以了。
總體而言就是這么幾個問題。 后來他去跟老大報告的時候,我看了一下他的網頁,發現知乎上面顯示的是搜索結果:“如何面試前端程序員“,其中一個回答就是讓面試者回答寫拖拽==
后來他跟我聊說,其實他也不是搞前端的,他是寫后臺的,難怪讓我用eclipse寫代碼,不過也謝謝他,讓我有了第一次的面試經歷。
新聞熱點
疑難解答