Web前端開發面試知識點大綱
- HTML&CSS
對Web標准的理解、瀏覽器內核差異
兼容性hack
CSS基本功:布局、盒子模型、選擇器優先級及使用
Html5
CSS3
移動端頁面開發
- JavaScript
數據類型
面向對象
繼承
閉包
插件
作用域
跨域
原型鏈
模塊化
自定義事件
內存泄漏
事件機制
異步裝載回調
模板引擎
前端MVC
路由
Node.js
JSON
ajax
- 其他
HTTP
Web安全
正則
優化
重構
響應式
SEO
UED
架構
Web前端職位要求
JavaScript
HTML
CSS
jQuery(客戶端腳本的一種框架)(ExtJS、YUI、Mootools、Dojo)
瀏覽器兼容
Http基本原理(用於jsp動態網頁設計)
Ajax技術(提升Web性能,提取所需要的數據)
性能優化
Web安全
Web開發工具
后端語言(PHP、Java)
編輯器
sublime
webstorm
類庫框架
用於瀏覽器:jQuery、BootStrap
用於nodejs:自帶模塊、其他模塊
理論知識
- 軟知識:數據結構、算法、OOP編程思想、設計模式
- 硬知識:Http標准(Http請求過程、狀態碼的意義、Http頭部信息、Cookie狀態管理、get/post請求、安全鏈接https),W3C標准(WebSocket、JSON、XML、JS、CSS、CSS3、HTML、HTML5),ECMAScript(所有客戶端腳本的鼻祖)
與Web相關的名詞術語
- W3C
World Wide Web Consortium 萬維網聯盟
標准化組織
發展Web規范,描述Web通信協議
- ECMAScript
腳本程序設計語言
實際上是一種腳本在語法語義上的標准,JavaScript、JScript、ActionScript都建立在這個標准上擴展自己的功能
- JavaScript
從上到下解釋執行的弱類型語言,不需要編譯
用於嵌入到HTML的客戶端腳本語言,由ECMAScript+DOM+BOM組成
DOM:文檔對象模型
BOM:瀏覽器對象模型(瀏覽記錄、網址、全屏、窗口大小也設置為對象)
- HTTP
HyperText Transfer Protocol 超文本傳輸協議
通過HTTP協議將服務器端的超文本資源下載到本地
訪問一個網頁需要發送多次請求,請求的先后順序是:文本、樣式/腳本、圖片
圖片訪問一次后緩存到本地(但是不能支架瀏覽,需要拷貝到其他文件夾下瀏覽),下次訪問可以提高速度
狀態碼:200(OK)、304(下載完畢)、404(未找到)
- URL
Uniform Resource Locator 統一資源定位符
唯一標識互聯網上的每一個資源
URL的組成:協議://服務器名稱(IP地址):端口號/路徑/文件名
常見的兩種形式的URL:
http://www.baidu.com 域名訪問
http://192.168.37.200/User/Login 明文的IP地址訪問
協議:http(超文本傳輸協議)、https(用安全套接字層傳送的超文本傳輸協議)、ftp(文件傳輸協議)、mailto(電子郵件地址)、file(當地文件或網上分享的文件)
服務器:在互聯網上有唯一IP地址的電腦,一般通過域名映射到該主機,既可以使用域名也可以使用IP地址
端口號:用於監聽某一特定服務的請求,80 端口是Web服務器的默認端口,在URL中默認的端口號可以不出現
- CSS
Cascading Style Sheets 層疊樣式表
主要的作用在於美化頁面
- SGML
Standard Generalize Markup Language 標准通用標記語言
用來解決不同操作系統中文檔格式不同的問題
是一種數據描述,數據模型,數據交流的標准,html和xml都基於此
純文本,所有平台都能很好的識別
- XML
eXtensible Markup Language 可擴展標記語言
用於描述數據的標記語言,跨平台性強,是目前使用最廣泛的數據格式
- HTML
HyperText Markup Language 超文本標記語言
用來制作網頁
- XHTML
eXtensible HyperText Markup Language 可擴展超文本標記語言
X即代表XML,HTML即HTML,XHTML是HTML的純凈版,結構更加清晰,語法更加嚴格,既有HTML的特點,又有XML的特點
結構化文檔的四個特點
整個文檔有且僅有一個根元素
每個元素都由開始標簽和結束標簽組成,除非使用空元素語法
元素的屬性必須有屬性值,屬性值用引號括起來(單引號和雙引號都可以)
DTD
Document Type Definition 文檔類型定義
W3C使用DTD來定義HTML和XHTML的語義約束,包括HTML文檔中可以出現哪些元素,各元素支持哪些屬性
HTML允許元素使用大寫字母
XHTML要求所有的元素和屬性都是小寫字母
HTML5基本結構
將HTML4中的DTD定義為如下結構即可,其他不變
<!DOCTYPE HTML>
HTML5語法的改變
標簽(元素)不區分大小寫
元素可以省略結束標簽
元素屬性可以省略屬性值
屬性值可以不用引號
HTML5支持的兩種指定頁面使用的字符集的方式
- 使用Content-Type指定字符集
<meta http-equiv="Content-Type" content="text/html ;charset=gb2312"/>
- 直接使用charset指定字符集
<meta charset="gb2312"/>
網頁文件類型
靜態網頁:.html和.htm(DOS操作系統保留)
動態網頁:.jsp、.php、.asp、.aspx