《JavaScript高级程序设计》一二章

第一章:JavaScript简介

1.1 JavaScript简史

Javascript1.0:1995年,Netscape公司为Netscape Navigator 2 开发了脚本语言。

Javascript1.1:Javascript1.1:1996年,Netscape Navigator 3中发布了Javascript1.1。
JScript:同年微软公司在IE3中加入名为JScript的Javascript实现。

ECMA-262:1997年ECMA指定TC39来标准化一种中立的脚本语言,他们在该年完成了ECMA-262——定义了一种名为ECMAScript的脚本语言标准。

JavaScript由DOM、EMAScript、BOM三个部分组成

1.2 ECMAScript

*ECMAScript由ECMA-262定义了其基础,规定了:语言、类型、语句、关键字、保留字、操作符、对象,可扩展该语言。Web是实现其可能的宿主环境之一。
JavaScript就遵循了ECMAScript的标准ECMAScript

1.2.1 ECMAScript版本

时间ECMA说明
19961.0本质上与JavaScript1.1相同,做些小改动
19982.0编辑加工的结果
19993.0修改字符串处理,错误定义,数值输出,新增支持语句语法。标志ECMAScript成为一门真正的编程语言。
20074.0几乎完全定义了一门新语言,包含强类型变量、数据结构、类、继承等,跨度大,在发布权最终被放弃。
20083.1进行较少改进,能在现有的Javascript引擎上实现,该替代方案获得超过4.0的支持,使其被放弃发布。
20095.0澄清3中的歧义,并且增添新功能,新说明
20115.1成为ISO国际标准
20136.0ECMAScript6.0草案制订完成并发布
20156.0发布正式版6.0

1.2.2 实现兼容ECMAScript

1.支持ECMA-262中描述的基本标准
2. 支持Unicode字符标准
3. 添加ECMA-262中没有描述规定的新对象和对象的新属性
4. 支持ECMA-262-中没有定义的“程序和正则表达式语法”

1.3 DOM

文档对象模型是针对XML,但经过拓展用于HTML的应用程序编程接口
使用DOM能在DHTML发展的同时保存Web跨平台的天性。

1.3.1 DOM级别

项目Value
DOM1级(1998)主要目标是映射文档结构。该级别由两个模型组成:DOM核心、DOM HTML
DOM2级扩充了鼠标和用户界面事件、范围、遍历等模块,通过对象借口增加对CSS的支持
DOM3级进一步拓展了DOM,引入了统一方式加载和保存文档的方法,新增验证文档的方法,开始支持XML1.0规范。

1.4 BOM

BOM可用于处理浏览器窗口与框架,访问和操作浏览器窗口,但因为制定相关标准,经常出问题,HTML5后,BOM有了正式规范。

第二章: 元素一script

2.1 script元素六个属性

属性名作用
async (可选)表示立即下载脚本,但不妨碍其他页面操作,只对外部脚本有效。
charset(可选)表示通过src属性指定的代码的字符集。少用
defer(可选)表示脚本会延迟到文档完全被解析后才会执行。
language(已废弃)原来用于表示编写代码使用的脚本语言:
src(可选)表示包含要执行代码的外部文件。
type(可选)表示 编写代码使用的脚本语言的内容类型(MIME类型)。text/javascript和text/ecmascript。服务器通常使用application/x-javascript和application/ecmascript

2.2 注意

  1. 包含在<script>元素内部的Javascript代码从上到下依次解释。
  2. 不要在代码中任何地方出现</script>字符串。使用’\’将字符串分割可以避免
  3. src属性的<script>元素不应在<script>和</script>之间有额外的Javascript代码
  4. scr属性可以是外部域的文件
  5. 不存在defer和async属性,浏览器会按照

2.3 属性内容

  1. 标签位置:<script> 元素可不放在<head>元素中,放在其中会导致要等Javascript文件都被下载后页面才会呈现,有延迟,因此<script>元素一般放在<body>元素页面的后面。
  2. 延迟脚本:defer属性用于表面脚本在执行时不会影响页面结构,会延迟到页面解析完成。在<script>中设置defer属性告诉浏览器,只适用于外部脚本
  3. 异步脚本:async属性也能用于改变处理脚本的行为,也是只适用于外部脚本文件,向浏览器告知立即下载,但与defer不同,async并不保证按照指定它们的先后顺序。

2.4 script在XHTML中的用法与注意:

小于号(<)后面不能带空格,尽量使用HTML实体(<)或用Cdata来包含JavaScript代码(使用此方法在不兼容Cdata的浏览器中要注释掉Cdata标记)

2.5 外部文件来包含JavaScript文件的优点

  1. 可维护性:脚本文件放在同一文件夹中,且在不触及HTML标记的情况下,集中精力编辑JavaScript代码
  2. 可缓存性:浏览器能够根据具体的位置缓存连接的所有外部Javascript文件,一次下载多次使用,加快页面加载速度。
  3. 适应未来:使用外部文件无需使用HTML以及hack

2.6 noscript元素

在不支持或禁用Javascript脚本文件的浏览器中可以创造元素,来显示代替的内容,该元素出现在中任何HTML元素,除<script>外。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值