北京獨到科技前端實習生面經 大三

如何獲取dom元素?

document.getElementById,.getElementByTagName,

這倆有什麼區別呢?

一個是獲取到的是id爲參數的dom元素,一個是獲取到標籤爲xx的dom數組

js的數組的成員函數列舉一些?

map,filter,用來篩選數據的,循環遍歷。除了遍歷的稍微有點忘記了。。

比如說想在數組裏添加元素?

用push,pop可以推出,像棧一樣。

連接兩個數組的方法?

concat,截取:splice是改變原數組,slice是返回一個新數組。

splice參數還有具體功能?

是一個刪除數組元素,有三個參數,第一個是begin,第二個是end,第三個是如果說往裏添加的元素。

那他除了刪除還有什麼其他的用法呢?

可以直接添加元素,在指定位置插入。還有替換。

數組的排序方法?

用sort。

sort有什麼侷限性?

只能是按數字的大小來排,如果說數組裏是一些字符串之類的。如果想要按自己的規定來排的話需要修改一下這個方法。。(這個可能不太對)

數組的去重能夠講一下有幾種方法嗎?

可以手動去重,也可以用es6新出的set可以去除重複元素。

具體怎麼寫能大概說一下嗎?

新建一個set,把數組元素循環放進set裏。或者可以用解構賦值。

這樣的話他的返回值就不是一個數組了,他的返回值就是一個set類型的了

對,也可以手動把它變成數組,用Array.from

call和apply的區別?

他們都是改變this指向,但是call後面得參數是一個一個傳的,apply是傳了一個數組。

怎麼建立一個ajax請求?用原生js

建立一個xmlhttprequest,。。我做小程序的時候一般用wx.request。。

es6的promise瞭解過嗎?

是用來解決異步操作的,解決異步操作的還有generator,和async/await,我因爲微信小程序裏有回調地獄的問題,後來用promise解決回調地獄的問題。

快速排序講一下原理?

快排是先找到一個樞紐,以這個樞紐,把數組中比他小的放一邊,比他大的放一邊,然後再在左邊進行重複的操作。

你還能想到其他比較常用的排序方法嗎?

冒泡,選擇排序,希爾排序,歸併排序。。

歸併排序講一下?

歸併排序是先分組,一組一組的比較,從小組變成大組,最後一次遍歷的時候是整個數組是一組。(這個面試的時候大小說反了)

常用的http方法有哪些?

get,post。get主要是放在url裏,以明文的形式發送的。post是看不見的。get一般瀏覽器會給他規定一個大小。ie應該是2k,chrome應該是8k。但是其實w3c沒有規定大小,都是瀏覽器自己規定的。

get請求類似於數據庫中的查找的功能。所以說一般的網頁就像查看商品的詳細信息之類都可以用get來做。get可以緩存到瀏覽器裏。下次再打開的時候不一定需要發送請求了。但是post是每次打開網頁都需要發送請求的。而且post主要是做增刪的操作。比如用戶登錄的時候,或者發帖的操作,比較隱私的操作的時候,用post。

http常用的狀態碼?

1開頭的主要是接收,正在處理。2開頭的是成功。3開頭的,301是永久重定向,302是臨時重定向。4開頭的是頁面這邊的錯誤,404是資源找不到了。500是服務器錯誤。

我現在有一個對象組成的數組,我數組裏的每一項都是一個對象,每一個對象裏包含的值可能也是數組,數組裏還有對象。我希望對這個數組進行一個深拷貝。要怎麼實現?

用遞歸,或者用JSON.stringify(JSON.prase)可以做這個。我想到的是這兩種。

Object對象的常用方法?

tostring,其他的記不太清了。(其實回來一看還有很多很多。比如:Object.key(), Object.getOwnPropertyNames(), Object.getPrototypeOf(), Object.valueOf(), Object.hasOwnProperty(), Object.isPropertyOf(), Object.isEnumerable(), Object.setter(), Object.getter(), Object.assign(),這個是複製對象自身的可枚舉屬性,可以深拷貝用也可以淺拷貝用。

還是深拷貝類型的數組,兩個數組,結構是一樣的,可能值是有差別的,我想拿到這兩個數組的交集,你有什麼思路?

循環比較大的那個,看小的有沒有他的屬性啊這樣。。

我想問一下你的實習時間大概是多長?

我是7月中旬,然後可以實習6個月

我們這邊暫時是週一到週六上班

那包飯嗎哈哈哈

包午飯哈哈哈,晚飯可能要自己解決。你有什麼問題嗎?

如果我能去公司的話,我大概是做哪方面呢?

這邊有PC端和手機端的兩個項目,主要框架是angular。

那請您對我這個面試做個點評吧

我覺得你基礎還可以把,但是感覺還是有點太依賴小程序這邊了。因爲我問你的有些問題,你這邊給我的回答就是可能他是封裝好的,或者是隻有跟這個有關的,所以不太記得。我覺得有一些原理性的東西或者是怎麼實現的還是多瞭解一些吧。瞭解底層的話有一些問題才能解決的比較快。然後就是像框架,這種css的flex佈局,可能會在公司裏做項目會用的比較多吧。私下裏還是多瞭解一些吧。

還有就是公司對實習生的培養計劃是什麼樣的呀?

公司目前處於前期發展階段,不管是實習生還是比較正式的。都是會做比較核心的業務,不會做一些偏重複性的工作。以三個月爲一個週期,看一下這個人的學習能力和各方面的素質,再決定以後的培養方向。

 

總結:

這次是小姐姐面試我!聲音很好聽,最後給我的點評也很用心。感謝她♥~~對自己來說,面試越來越不緊張了,“嗯,啊”重聽錄音的時候越來越少了,也越來越有邏輯了。非常開心可以得到肯定。金三銀四過去了,但是我相信總有一個座位是給我空着的!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章