當前位置:首頁 » 網頁前端 » 阿里前端面試
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

阿里前端面試

發布時間: 2022-01-21 02:03:21

『壹』 阿里巴巴p7級是什麼級別阿里的分類是怎樣的

P7是阿里的技術專家級別。P為技術崗,M為管理崗。

阿里具體分類如下:

P1,P2:一般空缺,為非常低端崗位預留。

P3:助理

P4:初級專員

P5:高級工程師

P6:資深工程師

P7:技術專家

P8:高級專家

P9:資深專家

P10:研究員

P11:高級研究員

P12:科學家

P13:首席科學家

P14:馬雲

(1)阿里前端面試擴展閱讀

阿里巴巴網路技術有限公司(簡稱:阿里巴巴集團)是以曾擔任英語教師的馬雲為首的18人於1999年在浙江杭州創立。

阿里巴巴集團經營多項業務,另外也從關聯公司的業務和服務中取得經營商業生態系統上的支援。業務和關聯公司的業務包括:淘寶網、天貓、聚劃算、全球速賣通、阿里巴巴國際交易市場、1688、阿里媽媽、阿里雲、螞蟻金服、菜鳥網路等。

2014年9月19日,阿里巴巴集團在紐約證券交易所正式掛牌上市,股票代碼「BABA」,創始人和董事局主席為馬雲。

2018年7月19日,全球同步《財富》世界500強排行榜發布,阿里巴巴集團排名300位。

『貳』 阿裡面試專場是一次面完嗎

阿里的什麼職位啊?
有前端的面試:

此次面試的職位就是WEB前端,不像我前幾次應聘騰訊,網易游戲的,是WEB開發,也要前端,也要有後台。所以考試的內容就全部是前端內容。其中一個給了個網頁,讓寫有語義的XHTML代碼,就是一個<form>,比較簡略。第二題是給了很長一段CSS代碼,讓做簡化,也不復雜,不過有個工具的繼承性我記錯了,沒做出來。剩餘的全是js的題了,其中讓寫一個通用的事件偵聽器函數,我沒寫出來,平時都用jQuery庫,看書的時候不太認真。

然後就是大家最想看的面試環節了。

筆試做的還是很亂的,我認為我收不到面試了,還好早上7點鍾,阿里巴巴打電話來通知我去面試。那個激動啊。通知我下午4點50面試。

下午4點半到達面試地點,填了個報到表。就開始等待了,很快一面開始了。

先是做了個自我介紹。自我介紹我做的很不好。我的面試水平太差了,不知道該講什麼。還好這個面試官很好,我做完簡略的介紹後,面試官給我說,其實我可以講講我做的項目,講講遇到什麼問題,是怎麼解決的。還有我學習這方面的知識的經歷,然後我就又講了這些,講出來了感覺確實很好。

其他職位的面試經驗和公司點評卧龍閣上還有一些,你抽空自己去看吧,內容太多了。

『叄』 BAT 前端工程師面試對演算法一般有怎樣的要求

當我是實習生時,我遇到了BAT三,所以我對演算法沒有要求。當然,實習生的要求也可能比較低。

  • 阿裡面試:

一邊使用電腦直接連接到互聯網看到面試官網站,博客之類的,然後選擇一些問,並幫助考背後的標簽組件的實現和JS類繼承,等等。在第二個方面,我也看到了,GitHub,博客等等。

實際上,在工作的前端使用的演算法並不多,即使像jQuery這樣的公共庫的實現對演算法的應用也不是很好。至於何時使用,請使用NodeJs偶爾編寫自動化工具,前端WebGL矩陣操作,圖像處理,如需要,但我認為這些都超出了一般前端工程師的能力。

『肆』 如何拿到阿里巴巴,百度,騰訊的前端實習生offer

1. 要有比較好的計算機基礎
這里的計算機基礎指的是數據結構與演算法,操作系統,編譯原理,計算機網路等等。雖然相對於其他方向而言,前端在工作中用到計算機基礎的地方可能少一點,但是無論大小廠,招實習生其實都是為正式招聘做儲備,所以會比較希望招將來有更大發展空間的人,就像里 Web 前後端分離的意義大嗎? - 知乎用戶的回答 和 怎樣成為全棧工程師(Full Stack Developer)? - 知乎用戶的回答 描述的那種。
如果你具備比較好的計算機基礎素養,那麼以後在拓展到其他領域(WebGL —— 計算機圖形學,Node.js 底層 —— 操作系統,JS 引擎和各種預編譯工具—— 編譯原理, etc.)的時候會更快上手。另外有一些公司對前端的概念不局限於 Web 前端,也包括移動端偏前端的部分,這里也需要你有比較好的計算機基礎才能做好。前端領域有很多人已經不滿足於造輪子,直接跑去造語言了,如果你編程基礎夠好,接觸過各種形形色色的編程語言和範式,再上手這些東西也會方便些(比如Ruby/Python->CoffeeScript,Haskell->LiveScript)。
雖然也有很多地方為了招到足夠多能來幹活的前端會降低對計算機基礎的要求,但是打好這方面的基礎是沒有壞處的,如果面試筆試被問到且答得上來,也是能夠加分的。一些大廠經常會出現「不是前端的面試官來面前端」的情況,我個人是覺得如果這類面試官問的都是計算機基礎問題的話,其實真的無可厚非,畢竟人家在面「一個前端程序員」之前,是在面「一個程序員」啊……

2. 要懂得現代前端的一些新技術
比如:

前端自動化工具(Gulp/Grunt等)
模塊化(CommonJS,AMD/CMD模塊載入器,各種Bundler,ES2015 Moles等)
前端 MV* 框架(Backbone,Angular等)
編譯到 CSS 和 JS 的一些語言(Less/Sass/CoffeeScript等)
前端自動化測試工具(Karma,Mocha,Web Driver等)
其他
有一些同學覺得這些東西懂得越多越好,我個人是覺得這些工具不一定要都了解(畢竟它們很多也未必能火多久),但對這些東西要有大致的概念,並且每個領域的用過一兩種(最好是在項目里),清楚它們的優缺點和必要程度。這是區分在前端上投入過一定精力的人和跨行來兼職前端的人的標志。
去大廠校招應聘前端的會有很多隻是做過一些 Web 項目,但不一定對前端的技術很了解,只是看前端門檻比較低就去投簡歷的人。如果你對這些新技術比較了解的話,起碼能夠證明你是比較專注前端而且花過一定時間在上面的。
同時,前端現在確實是一個每天都有很多輪子冒出來的領域,也需要你有足夠強的自學能力和(英文)文檔閱讀能力去跟上社區的這些新動態。接觸過比較多的輪子,才會有自己的判斷,不會老是人雲亦雲火一個學一個。這些工具里,確實也有很多在合適的場景下可以提高前端的生產力或者代碼質量,對這些東西有一定關注,也表明你對自己的生產力和代碼質量是有一定關注的,這其實是一個更廣義的靠譜程序員的特性。

3. 懂得什麼是 Web 標准和瀏覽器開發維護的流程,並且會跟進新發布的標准和主流瀏覽器新實現的特性
當然面試的時候一般不會直接問你這方面的問題,但是如果你懂這裡面的水大概是怎麼一回事的話,在很多問題上(特別是兼容性問題上)都能回答得比較深刻一些。最好清楚:

HTML、CSS、DOM,ECMAScript 和一些泛 HTML5 的標準是怎麼制定的
W3C 和 WHATWG 的區別
各種標準的不同版本和提交狀態是怎麼回事
知道標准和實現的差距(有些人喜歡把 W3C 標准奉為圭臬,但現實中瀏覽器們並不是這樣的)
知道 ECMAScript 和 JavaScript 的區別
知道瀏覽器的一些常見做法(比如給 CSS 特性加前綴)的緣由
標准和瀏覽器這灘水還是很渾的,涉及到很多利益糾葛和大廠的博弈,如果你大概清楚他們的一些事情,不光自己做前端兼容的時候會容易一些(不會只抱怨「為啥XXX就是不能OOO」而是懂得他們的無奈並且認真尋找解決方案),在新特性出來的時候也更容易消化(不是「啊又出了個新東西要學好煩啊」而是「在郵件列表上爭(si)論(bi)了那麼久他們終於把這個搞出來了」),你自己對前端比較基礎的那部分的知識體系更會有條理得多。個人覺得這也是區分比較有經驗的前端和臨時跨行的前端的關鍵之一,這些東西是需要你經過一段時間的耳濡目染才能理清楚,而且會在一定程度上影響你的工作的。

4. 多看書,多關注技術資訊
技術資訊的來源包括RSS、郵件訂閱、比較重要的郵件列表、或者follow Twitter和微博上一些比較有影響力的開發者。個人經驗是,一般在二面或者三面的時候,面試官都會問類似「你從哪裡接觸前端的新技術/你看過哪些書」的問題,因為前端現在技術更新很快,比較專注於前端這方面的人一般都會有自己接觸新技術的渠道,他們自然也會比較關心候選人是不是有在跟進社區的一些動向。其實這也能夠排除那些不太靠譜的臨門跨行的人,因為他們平時一般不會特意去關注前端技術的新動態的。

5. 不僅懂得一些東西怎麼寫,更要懂得一些東西不要怎麼寫
Web 標准大多不是嚴格向後兼容的,很多幾年前常用的寫法,現在已經被社區的大多數人強烈建議避開了,有很多特性也隨著時間的流逝被打上了 deprecated 的標簽,如果你不幸拿著一本比較老的書入門,又不在網上驗證上面說的每一句話,那麼很有可能你就這樣被誤導很久,比如 HTML可能會逐步被XML所取代嗎?(來自《css權威指南》) - 賀師俊的回答 這樣的情況……與之類似的還有:

JavaScript 里那數量令人嘆為觀止的坑
一些在經驗比較豐富的前端看來屬於常識的東西(比如:為什麼 CSS 大多放在 head,JavaScript 多放在 body 底端?)
劃分各種模塊、文件,添加模板的正確方式(比如錯誤方式是一堆腳本/樣式寫在一個超大文件里,或者在有替代方式的情況下在 JavaScript 里拼字元串)
解決一些老問題的新的best/better practice(比如不要到了 2015 年還深陷在回調地獄,去看看 promise 和 generator)
……
這些知識都需要你有一定的前端方面的經驗,看過比較多相關的博客和書,才能慢慢積累起來,所以也能區分靠譜的前端和不靠譜的前端。

6. 不依賴某一個特定的框架或者庫
比如很常見的「離開了jQuery就不會寫前端」星人……也不是說要做原生 JavaScript/CSS 和 DOM 的原教旨主義者,但高度依賴某個框架或者某個庫的話,通常意味著換了一個框架/庫你的學習成本會比不依賴特定輪子的人高,因為這通常是處於還不知道前端領域「什麼是什麼」的階段的表現。
事實上前端領域的這些輪子有一些都是其他領域早就有,或者根本不需要的東西,其中很多的實現原理也不是那麼復雜,只不過是臟活累活。個人覺得對這些東西應該報以「不能知其然而不知其所以然」的態度,起碼大概清楚它們的實現是怎樣的套路,知道它們的優缺點,多接觸幾種,這樣在換一個替代品的時候很快就能上手。
因為前端的特殊性,在開發比較大的項目的時候使用庫和框架是必須的(比如遇到各種滑鼠事件的前端兼容問題時,總不能全都就地寫 if-else 吧,總得封裝一下。遇到非常 data-driven 的項目,還用手動操作 DOM 的寫法很難維護吧,用個 MV* 框架真的不純是偷懶了),但是這些東西都是會迅速改朝換代的,死守著某個特定的庫或者框架,確實不太靠譜。很多公司喜歡問候選人「原生 API 寫個 Ajax 請求怎麼寫」這類問題,感覺很大程度上也是在排除這類人……

7. 懂一點點設計
這里說的不是切圖啊PS啊AI啊什麼的,而是大概懂基礎的視覺傳達/色彩構成/平面構成的知識。畢竟前端是和設計師聯系最密切的程序員,雖然前端要做的事不僅僅包括 UI/UX,但是 UI/UX 卻都主要依賴前端來實現。很多時候,設計師(特別是不會前端技術的設計師)給出的設計可能很難(在照顧兼容性的前提下)實現,這個時候不應該跟他硬拼讓他改設計,或者自己默默糾結怎麼用很 hack 很難維護的方法去實現,而是理解設計的意圖,並且跟設計師溝通,盡可能在工程上容易實現容易維護的前提下實現設計的意圖,哪怕要修改一些具體的表現形態。
最恐怖的就是丟一張圖過來,讓你做到 pixel perfect,你也不問三七二十一直接開工,代碼寫得別扭也不去溝通,遇到不兼容就打個哈哈矇混過關了……設計的目標是讓大眾都能更容易地使用,這樣做是與設計師存在的意義背道而馳的,我也遇到過一些設計師會主動來問前端怎樣的設計在瀏覽器里容易實現,怎樣的設計比較別扭,這樣他才能結合多方面的信息去做設計上的決定。如果你對設計不關心,不與他交流的話,實際上相當於剝奪了一些關心工程實現的設計師的知情權(一般正常的設計師看到自己的設計實現出來效果不好,也會小郁悶的……)。個人覺得與設計師溝通的技巧,也是一個靠譜的前端應該具備的素養。

8. 懂一點點後端
(這個是我看了一下別人的答案補加的)。其實這個和第一點的目的類似,最重要的是別要做一個非得等隊友來才能開工的人。大廠(主要是阿里系)有不少在用 Node 做前後端分離一類的事,另外做前端的經常要在後端還沒寫完的時候自己去 mock 一下數據介面,如果你懂怎麼搭建簡單的伺服器和 serve 數據給前端,那麼就可以提高開發的效率。即使你只想專注前端,但前端有很多東西(比如 JS 跨域,WebSocket,SSE,WebGL 的素材獲取)都需要你懂得架設簡單的後端才能去實踐,這時候不懂後端通常就意味著你要放棄學習這些知識,或者只能紙上談兵。一個正常的前端肯定是要對計算機網路和 HTTP 等協議有一定了解的,有了這些知識去學簡單的後端其實是很水到渠成的事情。

9. 在前端投入足夠的時間
意識到以上幾點還需要投入足夠多的時間才能看到成果,不然很容易出現「道理我都懂,可是OOO」的情況,那最後也還是靠譜不了的……如果不是真的對前端感興趣並且投入足夠多的時間,與其為了「好找工作」而投前端,不如轉一個更合適的方向。阿里前端的困局與突圍 · Issue #141 · lifesinger/lifesinger.github.com · GitHub 和 圖靈社區 : 閱讀 : 企業軟體領域前端開發的困境 都能說明這個問題。
另外有些面試官喜歡問你一些很細節的 API (雖然我個人覺得這類問題很囧),這些東西很多時候都是靠的「無他,但手熟爾」,雖然有一些確實有點刁難人的味道,但有一些真的是如果你經常寫前端,重復多幾次就會記住的,如果記不住,只能說明你前端寫的不夠多。還有一些沒足夠實戰經驗的人很少遇到過的問題(比如 JS 跨域),也是需要在前端投入足夠多的時間,才會接觸到(無論是紙上談兵,還是項目里遇到)。

其實綜上所述,不靠譜的前端大概表現就是:計算機基礎不好(更糟糕的是編程基礎都不行,不過編程基礎和計算機基礎好不好跟績點高不高專業對不對口這些其實真的不一定有什麼關系……),對前端的認識還停留在十年前,對社區出現的新工具完全不認識(沒認識全很正常,但完全不了解就有點兩耳不聞窗外事一心只讀聖賢書的味道了……),不懂 Web 標準是怎麼回事或者不在意標准,遇到兼容問題就復制粘貼搜到的代碼,對於一些在社區里是常識的坑毫無意識地各種踩,「離開了jQuery/某庫/某框架就不會寫前端」星人,或者平時根本沒怎麼做過前端的東西,只是做做 Web 項目順帶寫前端,到應聘了臨門一腳跑過來……不管是平時學習還是筆試面試,盡量避免向這些特徵靠攏就可以了。事實上大廠們招人不一定會要求這么嚴格,而且大廠里的團隊本身也未必個個靠譜,但是平時有在這些方面努力的話,起碼如果掛了會知道自己哪裡不足,或者到底是他的問題還是你的問題……

以上大概就是我覺得拿到大廠(or前端比較靠譜的中小廠)前端offer需要的水平,其實我感覺沒必要拿「實習」這個詞來限定自己,盡量往高水平靠攏,才能做到是你來選公司,而不是公司來選你,這樣你才能結合興趣/家庭/個人規劃之類的因素拿到最適合自己的 offer。另外,我覺得面試這回事是這樣的,上面提到的這些特徵,每一條單獨拿出來,在不確定面試官的情況下,既不是拿到offer的充分條件,也不是拿到offer的必要條件,某一條不滿足,也不是拿不到offer的充分或必要條件。大廠的面試官有很多種,有些設計出身喜歡問設計,有些後端出身喜歡問偏後端的東西,有些喜歡問你API細節,有些喜歡問你實現思路,有些喜歡看你學習能力,有些面試官本來就不是前端所以喜歡問你基礎題。如果你側重某一些方面,雖然無可厚非,但是運氣不好遇上期望不同的面試官,可能你就會得到比較低的評價或者掛掉。確定能拿 offer 的唯一途徑,就是面面俱到,這當然是不可能的要求,但大廠的種種因素配合起來往往就是在找這種不存在的人才,真的想拿 offer 的話,就只有硬著頭皮盡量靠攏。

就像國內很多大廠里比較著名的前端們文章/博客/知乎里提到過的一樣,前端這塊水不是很深,但水非常非常寬,在考慮將來作為一個前端如何發展如何應對天花板之前,先要腳踏實地把這些屬於前端的「本分」的東西搞好。事實上前面提到的這些東西我也沒有全都做到。作為前端,個人覺得最重要的是要保持一顆開放、謙卑的心,不要抵觸新東西,永遠記得外面的世界還有很多東西自己不懂,要繼續學習。

『伍』 阿里和百度的前端offer比較

阿里巴巴網路科技有限公司(以下簡稱:阿里巴巴集團)是一家主要提供電子商務在線交易平台的公司,由前英語教師ma 18人領導,成立於1999年在杭州。

2000年1月1日,由李彥宏和徐勇在美國創建的大型互聯網搜索引擎網路(BIDU)。它被認為是中國三大互聯網公司BAT的縮寫。截至2016年1月,網路在Alexa排名中位列第四,排名第一。


阿里巴巴集團

這里的計算機基礎是指數據結構和演算法、操作系統、編譯原理、計算機網路等。雖然相對於其他方向,前面用於基本的計算機工作的地方可能有點少,但不管工廠的規模,招募實習生完成正式招聘儲備,那麼將會對未來的希望有更大的發展空間,在一個Web前端分離的意義大嗎?-用戶如何回答以及如何成為一個完整的堆棧開發人員?-用戶的回答所描述的類型。

如果你有良好的基本的計算機讀寫能力,然後再擴展到其他領域(WebGL,計算機圖形學,節點)。Js底層操作系統、Js引擎和預編譯工具、編譯原理等)將很快開始。此外,還有一些公司不局限於網路的前端,包括前端部分的移動端,這也要求你有一個好的計算機基礎來做好。前區有很多人不滿足車輪,直接運行構建語言,如果你編程基礎不夠好,接觸各種編程語言和範例,學習這些東西會更容易(例如Ruby / Python - > CoffeeScript,Haskell - > LiveScript)。

雖然有很多地方招募足夠做前端的工作將減少對計算機基礎的需求,但這出戲的基礎是無害的,如果寫,要求回答面試,也可以加分。通常,「一些公司(不是面試官面前前端」的情況,我個人認為如果這種官問基本的計算機問題,實際上正確的,畢竟,人家在臉上,「之前的前端程序員」,在臉上,「程序員」

『陸』 Web前端崗位面試題有哪些

前端面試題匯總,多餘的就不說先做會這些東西吧

HTML

Doctype作用?嚴格模式與混雜模式如何區分?它們有何意義?

HTML5 為什麼只需要寫 <!DOCTYPE HTML>?
行內元素有哪些?塊級元素有哪些? 空(void)元素有那些?
頁面導入樣式時,使用link和@import有什麼區別?
介紹一下你對瀏覽器內核的理解?
常見的瀏覽器內核有哪些?
html5有哪些新特性、移除了那些元素?如何處理HTML5新標簽的瀏覽器兼容問題?如何區分 HTML 和 HTML5?
簡述一下你對HTML語義化的理解?
HTML5的離線儲存怎麼使用,工作原理能不能解釋一下?
瀏覽器是怎麼對HTML5的離線儲存資源進行管理和載入的呢?
請描述一下 cookies,sessionStorage 和 localStorage 的區別?
iframe有那些缺點?
Label的作用是什麼?是怎麼用的?(加 for 或 包裹)
HTML5的form如何關閉自動完成功能?
如何實現瀏覽器內多個標簽頁之間的通信? (阿里)
webSocket如何兼容低瀏覽器?(阿里)
頁面可見性(Page Visibility)API 可以有哪些用途?
如何在頁面上實現一個圓形的可點擊區域?
實現不使用 border 畫出1px高的線,在不同瀏覽器的Quirksmode和CSSCompat模式下都能保持同一效果。
網頁驗證碼是幹嘛的,是為了解決什麼安全問題?
tite與h1的區別、b與strong的區別、i與em的區別?

css

介紹一下標準的CSS的盒子模型?與低版本IE的盒子模型有什麼不同的?
CSS選擇符有哪些?哪些屬性可以繼承?
CSS優先順序演算法如何計算?
CSS3新增偽類有那些?
如何居中div?如何居中一個浮動元素?如何讓絕對定位的div居中?
display有哪些值?說明他們的作用。
position的值relative和absolute定位原點是?
CSS3有哪些新特性?
請解釋一下CSS3的Flexbox(彈性盒布局模型),以及適用場景?
用純CSS創建一個三角形的原理是什麼?
一個滿屏 品 字布局 如何設計?
常見兼容性問題?
li與li之間有看不見的空白間隔是什麼原因引起的?有什麼解決辦法?
經常遇到的瀏覽器的兼容性有哪些?原因,解決方法是什麼,常用hack的技巧 ?
為什麼要初始化CSS樣式。
absolute的containing block計算方式跟正常流有什麼不同?
CSS里的visibility屬性有個collapse屬性值是幹嘛用的?在不同瀏覽器下以後什麼區別?
position跟display、margin collapse、overflow、float這些特性相互疊加後會怎麼樣?
對BFC規范(塊級格式化上下文:block formatting context)的理解?
CSS權重優先順序是如何計算的?
請解釋一下為什麼會出現浮動和什麼時候需要清除浮動?清除浮動的方式
移動端的布局用過媒體查詢嗎?
使用 CSS 預處理器嗎?喜歡那個?
CSS優化、提高性能的方法有哪些?
瀏覽器是怎樣解析CSS選擇器的?
在網頁中的應該使用奇數還是偶數的字體?為什麼呢?
margin和padding分別適合什麼場景使用?
抽離樣式模塊怎麼寫,說出思路,有無實踐經驗?[阿里航旅的面試題]
元素豎向的百分比設定是相對於容器的高度嗎?
全屏滾動的原理是什麼?用到了CSS的那些屬性?
什麼是響應式設計?響應式設計的基本原理是什麼?如何兼容低版本的IE?
視差滾動效果,如何給每頁做不同的動畫?(回到頂部,向下滑動要再次出現,和只出現一次分別怎麼做?)
::before 和 :after中雙冒號和單冒號 有什麼區別?解釋一下這2個偽元素的作用。
如何修改chrome記住密碼後自動填充表單的黃色背景 ?
你對line-height是如何理解的?
設置元素浮動後,該元素的display值是多少?(自動變成display:block)
怎麼讓Chrome支持小於12px 的文字?
讓頁面里的字體變清晰,變細用CSS怎麼做?(-webkit-font-smoothing: antialiased;)
font-style屬性可以讓它賦值為「oblique」 oblique是什麼意思?
position:fixed;在android下無效怎麼處理?
如果需要手動寫動畫,你認為最小時間間隔是多久,為什麼?(阿里)
display:inline-block 什麼時候會顯示間隙?(攜程)
overflow: scroll時不能平滑滾動的問題怎麼處理?
有一個高度自適應的div,裡面有兩個div,一個高度100px,希望另一個填滿剩下的高度。
png、jpg、gif 這些圖片格式解釋一下,分別什麼時候用。有沒有了解過webp?
什麼是Cookie 隔離?(或者說:請求資源的時候不要讓它帶cookie怎麼做)
style標簽寫在body後與body前有什麼區別?

JavaScript

介紹JavaScript的基本數據類型。
說說寫JavaScript的基本規范?
JavaScript原型,原型鏈 ? 有什麼特點?
JavaScript有幾種類型的值?(堆:原始數據類型和 棧:引用數據類型),你能畫一下他們的內存圖嗎?
Javascript如何實現繼承?
Javascript創建對象的幾種方式?
Javascript作用鏈域?
談談This對象的理解。
eval是做什麼的?
什麼是window對象? 什麼是document對象?
null,undefined的區別?
寫一個通用的事件偵聽器函數(機試題)。
[「1」, 「2」, 「3」].map(parseInt) 答案是多少?
關於事件,IE與火狐的事件機制有什麼區別? 如何阻止冒泡?
什麼是閉包(closure),為什麼要用它?
javascript 代碼中的」use strict」;是什麼意思 ? 使用它區別是什麼?
如何判斷一個對象是否屬於某個類?
new操作符具體幹了什麼呢?
用原生JavaScript的實現過什麼功能嗎?
Javascript中,有一個函數,執行時對象查找時,永遠不會去查找原型,這個函數是?
對JSON的了解?
[].forEach.call($$("*"),function(a){ a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16) }) 能解釋一下這段代碼的意思嗎?
js延遲載入的方式有哪些?
Ajax 是什麼? 如何創建一個Ajax?
同步和非同步的區別?
如何解決跨域問題?
頁面編碼和被請求的資源編碼如果不一致如何處理?
模塊化開發怎麼做?
AMD(Moles/Asynchronous-Definition)、CMD(Common Mole Definition)規范區別?
requireJS的核心原理是什麼?(如何動態載入的?如何避免多次載入的?如何 緩存的?)
讓你自己設計實現一個requireJS,你會怎麼做?
談一談你對ECMAScript6的了解?
ECMAScript6 怎麼寫class么,為什麼會出現class這種東西?
非同步載入的方式有哪些?
documen.write和 innerHTML的區別?
DOM操作——怎樣添加、移除、移動、復制、創建和查找節點?
.call() 和 .apply() 的含義和區別?
數組和對象有哪些原生方法,列舉一下?
JS 怎麼實現一個類。怎麼實例化這個類
JavaScript中的作用域與變數聲明提升?
如何編寫高性能的Javascript?
那些操作會造成內存泄漏?
JQuery的源碼看過嗎?能不能簡單概況一下它的實現原理?
jQuery.fn的init方法返回的this指的是什麼對象?為什麼要返回this?
jquery中如何將數組轉化為json字元串,然後再轉化回來?
jQuery 的屬性拷貝(extend)的實現原理是什麼,如何實現深拷貝?
jquery.extend 與 jquery.fn.extend的區別?
jQuery 的隊列是如何實現的?隊列可以用在哪些地方?
談一下Jquery中的bind(),live(),delegate(),on()的區別?
JQuery一個對象可以同時綁定多個事件,這是如何實現的?
是否知道自定義事件。jQuery里的fire函數是什麼意思,什麼時候用?
jQuery 是通過哪個方法和 Sizzle 選擇器結合的?(jQuery.fn.find()進入Sizzle)
針對 jQuery性能的優化方法?
Jquery與jQuery UI有啥區別?
JQuery的源碼看過嗎?能不能簡單說一下它的實現原理?
jquery 中如何將數組轉化為json字元串,然後再轉化回來?
jQuery和Zepto的區別?各自的使用場景?
針對 jQuery 的優化方法?
Zepto的點透問題如何解決?
jQueryUI如何自定義組件?
需求:實現一個頁面操作不會整頁刷新的網站,並且能在瀏覽器前進、後退時正確響應。給出你的技術實現方案?
如何判斷當前腳本運行在瀏覽器還是node環境中?(阿里)
移動端最小觸控區域是多大?
jQuery 的 slideUp動畫 ,如果目標元素是被外部事件驅動, 當滑鼠快速地連續觸發外部元素事件, 動畫會滯後的反復執行,該如何處理呢?
把 Script 標簽 放在頁面的最底部的body封閉之前 和封閉之後有什麼區別?瀏覽器會如何解析它們?
移動端的點擊事件的有延遲,時間是多久,為什麼會有? 怎麼解決這個延時?(click 有 300ms 延遲,為了實現safari的雙擊事件的設計,瀏覽器要知道你是不是要雙擊操作。)
知道各種JS框架(Angular, Backbone, Ember, React, Meteor, Knockout…)么? 能講出他們各自的優點和缺點么?
Underscore 對哪些 JS 原生對象進行了擴展以及提供了哪些好用的函數方法?
解釋JavaScript中的作用域與變數聲明提升?
那些操作會造成內存泄漏?
JQuery一個對象可以同時綁定多個事件,這是如何實現的?
Node.js的適用場景?
(如果會用node)知道route, middleware, cluster, nodemon, pm2, server-side rendering么?
解釋一下 Backbone 的 MVC 實現方式?
什麼是「前端路由」?什麼時候適合使用「前端路由」? 「前端路由」有哪些優點和缺點?
知道什麼是webkit么? 知道怎麼用瀏覽器的各種工具來調試和debug代碼么?
如何測試前端代碼么? 知道BDD, TDD, Unit Test么? 知道怎麼測試你的前端工程么(mocha, sinon, jasmin, qUnit..)?
前端templating(Mustache, underscore, handlebars)是幹嘛的, 怎麼用?
簡述一下 Handlebars 的基本用法?
簡述一下 Handlerbars 的對模板的基本處理流程, 如何編譯的?如何緩存的?
用js實現千位分隔符?(來源:前端農民工,提示:正則+replace)
檢測瀏覽器版本版本有哪些方式?
我們給一個dom同時綁定兩個點擊事件,一個用捕獲,一個用冒泡,你來說下會執行幾次事件,然後會先執行冒泡還是捕獲

其他問題

原來公司工作流程是怎麼樣的,如何與其他人協作的?如何誇部門合作的?
你遇到過比較難的技術問題是?你是如何解決的?
設計模式 知道什麼是singleton, factory, strategy, decrator么?
常使用的庫有哪些?常用的前端開發工具?開發過什麼應用或組件?
頁面重構怎麼操作?
列舉IE與其他瀏覽器不一樣的特性?
99%的網站都需要被重構是那本書上寫的?
什麼叫優雅降級和漸進增強?
是否了解公鑰加密和私鑰加密。
WEB應用從伺服器主動推送Data到客戶端有那些方式?
對Node的優點和缺點提出了自己的看法?
你有用過哪些前端性能優化的方法?
http狀態碼有那些?分別代表是什麼意思?
一個頁面從輸入 URL 到頁面載入顯示完成,這個過程中都發生了什麼?(流程說的越詳細越好)
部分地區用戶反應網站很卡,請問有哪些可能性的原因,以及解決方法?
從打開app到刷新出內容,整個過程中都發生了什麼,如果感覺慢,怎麼定位問題,怎麼解決?
除了前端以外還了解什麼其它技術么?你最最厲害的技能是什麼?
你用的得心應手用的熟練地編輯器&開發環境是什麼樣子?
對前端界面工程師這個職位是怎麼樣理解的?它的前景會怎麼樣?
你怎麼看待Web App 、hybrid App、Native App?
你移動端前端開發的理解?(和 Web 前端開發的主要區別是什麼?)
你對加班的看法?
平時如何管理你的項目?
說說最近最流行的一些東西吧?常去哪些網站?
如何設計突發大規模並發架構?
說說最近最流行的一些東西吧?常去哪些網站?
是否了解開源的工具 bower、npm、yeoman、grunt、gulp,一個 npm 的包里的 package.json 具備的必要的欄位都有哪些?(名稱、版本號,依賴)
每個模塊的代碼結構都應該比較簡單,且每個模塊之間的關系也應該非常清晰,隨著功能和迭代次數越來越多,你會如何去保持這個狀態的?
Git知道branch, diff, merge么?
如何設計突發大規模並發架構?
當團隊人手不足,把功能代碼寫完已經需要加班的情況下,你會做前端代碼的測試嗎?
說說最近最流行的一些東西吧?平時常去哪些網站?
知道什麼是SEO並且怎麼優化么? 知道各種meta data的含義么?
移動端(Android IOS)怎麼做好用戶體驗?
簡單描述一下你做過的移動APP項目研發流程?
你在現在的團隊處於什麼樣的角色,起到了什麼明顯的作用?
你認為怎樣才是全端工程師(Full Stack developer)?
介紹一個你最得意的作品吧?
你有自己的技術博客嗎,用了哪些技術?
對前端安全有什麼看法?
是否了解Web注入攻擊,說下原理,最常見的兩種攻擊(XSS 和 CSRF)了解到什麼程度?
項目中遇到國哪些印象深刻的技術難題,具體是什麼問題,怎麼解決?。
最近在學什麼東西?
你的優點是什麼?缺點是什麼?
如何管理前端團隊?
最近在學什麼?能談談你未來3,5年給自己的規劃嗎?

『柒』 如果進阿里前端,代碼能力得達到什麼程度

因為之前淘寶或部分商業公司,代碼能力能夠滿足業務的需要可以勉強通過,現在要求,可以滿足未來業務的需要,至於未來的業務需求,它需要你有一定的商業思維,站在技術的角度尋找更多的可能性和結合點。例如,如果你需要能夠覆蓋你的業務,你必須能夠獨立地覆蓋它。一些新技術如果對業務有幫助,就可以集成。


我接下來的幾個項目,包括一個要求是視頻監控,之前的老師是用微軟的ActiveX,因此只能使用IE瀏覽器。我感覺很糟糕,所以老師推薦的「高級」技術越多,使用VLC構建視頻轉碼伺服器,然後使用WEB RTC進行處理,使用HTML 5視頻元素進行顯示,這種兼容性和可擴展性遠高於ActiveX。在此基礎上還對機會進行了研究,包括項目的信息傳遞,地理定位需求也盡可能地使用流行的方式

『捌』 阿里巴巴前端筆試題會涉及什麼語言

1、你做過的最滿意的前端作品?
2、你了解哪些新技術?
3、你是怎樣接觸前端的?
4、你對你的學校和專業怎麼看?
5、下圖綠色區域的寬度為100%,其中有三個矩形,第一個矩形的寬度是200px,第二個和第三個矩形的寬度相等。請使用CSS3中的功能實現它們的布局。

已知HTML結構是:
<div class="box">
<div class="item">column 1</div>
<div class="item">column 2</div>
<div class="item">column 3</div>
</div>

6、在tmall.com的某個頁面中存在一個id等於J_iframe_taobao的iframe,該iframe的域名是taobao.com。在不考慮IE瀏覽器的情況下,用最簡潔的代碼實現頁面與該iframe進行雙向通信?
...
<iframe id="J_iframe_taobao" src="http://taobao.com/xxx"></iframe>
...

7、請用html5標准完成以下頁面布局(要求完整書寫整個頁面的html代碼,不需要寫CSS)

『玖』 接到了阿里的web前端開發面試,怎麼准備這次面試

最好是向裡面的人打聽一下