web开发必备常识

W3C标准

w3c标准是一系列标准的集合。包括以下几个部分:

  • 结构标准语言(Structure):

可扩展标记语言(XML)

可扩展超文本标记语言(XHTML/HTML)

  • 表现标准语言(Presentation):

层叠样式表(CSS)

  • 行为标准(Behavior):

文档对象类型(DOM)

ECMAScript

思维导图:

W3C标准 .png

浏览器内核

浏览器内核主要分成两部分:渲染引擎(layout engineer或Rendering Engine)和JS引擎:

  • 渲染引擎:

也称排版引擎,解释引擎。负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。

  • JS引擎:

解析和执行javascript来实现网页的动态效果。

最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎

  • 市场上主流浏览器的内核:
    1. Trident内核:IE , MaxThon , 腾讯TT , The World , 360 , 搜狗浏览器等。
    2. Gecko内核:Netscape6及以上版本 , MozillaSuite/SeaMonkey等
    3. WebKit内核:Safari,Chrome , Chrome的:Blink(WebKit的分支)(微信内置浏览器内核 X5 blink)
    4. Presto内核:Opera7及以上。

    Reference-浏览器内核的解析和对比

Javacript的组成

转自-JavaScript组成

JavaScript和ECMAScript通常都被人们用来表达相同的含义,但是JavaScript的含义却比ECMA-262的要多得多,一个完整的JavaScript有三个组成部分组成。

1
2
3
核心(ECMAScript)
文档对象模型(DOM)
浏览器对象模型(BOM)

JavaScript语言组成部分包含

1
2
3
4
5
6
7
语法
类型
语句
关键字
保留字
操作符
对象

文档对象模型(DOM Document Object Model)

针对XML但经过扩展用于HTML的应用程序编程接口,DOM把整个页面映射成一个多节点结构,HTML或XML页面中的每个组成部分都是某种类型的节点,这些节点包含不同类型的数据。

浏览器对象模型(BOM)

支持可以操作和访问浏览器窗口的浏览器对象模型(BOM Browser Object Model),开发人员可以使用BOM控制浏览器显示的页面以外的部分。

从根本上讲,BOM只处理浏览器窗口和框架,但人们习惯上把针对浏览器的JavaScript扩展算作BOM的一部分,下面就是这样的扩展;

1
2
3
4
5
6
7
弹出浏览器窗口
移动、缩放、和关闭浏览器窗口功能
提供浏览器详细功能的`navigator`对象
提供浏览器所加载页面的详细`location`对象
提供用户显示器分辨率纤细信息的`screen`对象
对`Cookies`的支持
像`XMLHttpRequest`和IE的`ActiveObject`这样的自定义对象