这应该是我在面试前端时被问到的最印象深刻的问题,也最令我吃惊的问题——“为什么你老是问我后端的问题?”
我没去面试过前端的职位,不知道别人家的面试是怎么样的,是一直在聊CSS,JS,HTML还是会聊聊网络,操作系统之类的。我在跟候选人简单聊下JS之后会问这样的一个问题:能不能给我阐述下用户在输入网址,敲下回车之后,整个数据的传递过程,最终网页是如何呈现到用户面前的。这个地方我会特别强调要详细阐述。这其实是一个通用的问题,前后端都会问。由此展开后涉及的到内容比较多,比如http协议,缓存,CDN,前端发布流程,后端的话需要详细到框架内部。
另外对于前端来说,我会简单的问下,知道什么是线程,什么是进程吗?实时上,大部分的候选人都能够了解。但确实有些人完全没概念,包括那些简历上写的是工作多年的候选人。在nodejs火了这么多年之后,前端工程师的上手成本其实非常低。尝试下这些东西,了解下js在服务器端的运行总没有啥坏处。且不说服务器端的运行。单说js在浏览器里面的执行,浏览器是多线程还是多进程的?浏览器在加载外部资源的时候是单线程的吗?
如果我看到应聘者有多语言经历的话,我还会问下语言之间的差别是什么?Java跟Javascript之间有什么差别?有很多意想不到的答案。比如:Java里面都是定义Class的,而JS不是。我再追问,除了语法之外语言之间的差别呢。答:Javascript是脚本语言。我再次问,知道什么是动态语音吗?答曰:js是吧?
遇到过几次,在我问这几个问题时,会有人说:我说,你怎么老是问我后端的问题呢?印象最深的一次是我在追问HTTP协议细节的时候,有人这么问了我一下。我顿时傻了。
有时候我在想,前端工程师到底算不是程序员或者软件工程师,最近一段时间,前后端都在招人,但是从简历的数量上来看,前端投来的简历是后端的4或5倍。但是大部分的前端都仅限于CSS,JS,HTML,当然这些是最基础的,但是工程结构,项目构建流程,计算机知识等,也是比不可少需要了解的吧。也有很多我觉得在前端比较优秀的同事,对CSS和JS的掌握非常好,但是看工程的组织方式,以及代码结构,都比较稚嫩(这个词不知道能不能表达清楚)。
或许应该术业有专攻,写前端的不需要了解其他的东西,单纯的写页面就够了。在之前或许就是这样,出一个设计稿,扔给前端,然后前端扔一个静态页面给后端,齐活了。但是随着前端的越来越重,大部分的逻辑都在往前端迁移(或者说前端的业务本身就会越来越多),因此单纯的做出兼容各种浏览器的页面是不够的了。
最后说下,上面说的面试流程并不是固定的,根据不同的候选人,采用的面试方式/流程是不同的。并且面试的目的也并不是单纯的看应聘者是否能胜任工作。以后可以写篇,我面试时在想什么的文章,或许对大家在面试时了解面试官的想法有帮助。
----EOF-----
微信分享/扫码阅读

HTML的未來將朝著更加語義化、功能化和模塊化的方向發展。 1)語義化將使標籤更明確地描述內容,提升SEO和無障礙訪問。 2)功能化將引入新元素和屬性,滿足用戶需求。 3)模塊化將支持組件化開發,提高代碼復用性。

htmlattributesarecrucialinwebdevelopment forcontrollingBehavior,外觀和功能

alt屬性是HTML中標籤的重要部分,用於提供圖片的替代文本。 1.當圖片無法加載時,alt屬性中的文本會顯示,提升用戶體驗。 2.屏幕閱讀器使用alt屬性幫助視障用戶理解圖片內容。 3.搜索引擎索引alt屬性中的文本,提高網頁的SEO排名。

HTML、CSS和JavaScript在網頁開發中的作用分別是:1.HTML用於構建網頁結構;2.CSS用於美化網頁外觀;3.JavaScript用於實現動態交互。通過標籤、樣式和腳本,這三者共同構築了現代網頁的核心功能。

設置標籤的lang屬性是優化網頁可訪問性和SEO的關鍵步驟。 1)在標籤中設置lang屬性,如。 2)在多語言內容中,為不同語言部分設置lang屬性,如。 3)使用符合ISO639-1標準的語言代碼,如"en"、"fr"、"zh"等。正確設置lang屬性可以提高網頁的可訪問性和搜索引擎排名。

htmlattributeseresene forenhancingwebelements'functionalityandAppearance.TheyAdDinformationTodeFineBehavior,外觀和互動,使網站互動,響應式,visalalyAppealing.AttributesLikutesLikeSlikEslikesrc,href,href,href,類,類型,類型,和dissabledtransfransformformformformformformformformformformformformformformforment

toCreateAlistInHtml,useforforunordedlistsandfororderedlists:1)forunorderedlists,wrapitemsinanduseforeachItem,RenderingeringAsabulletedList.2)fororderedlists,useandfornumberedlists,useandfornumberedlists,casundfornumberedlists,casundfornthetthetthetthetthetthetthetttributefordforderfordforderforderentnumberingsnumberingsnumberingStys。

HTML用於構建結構清晰的網站。 1)使用標籤如、、定義網站結構。 2)示例展示了博客和電商網站的結構。 3)避免常見錯誤如標籤嵌套不正確。 4)優化性能通過減少HTTP請求和使用語義化標籤。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器