笔记:《JavaScript高级程序设计》

第1章 JavaScript简介

1.一个完整的JavaScript实现应该由三部分组成:核心(ECMAScript),文档对象模型(DOM)和浏览器对象模型(BOM)。

2.Web浏览器只是ECMAScript实现可能的宿主环境之一。宿主环境不仅提供基本的ECMAScript实现,同时也会提供该语言的扩展,以便语言与环境之间对接交互。而这些扩展——如DOM,则利用ECMAScript的核心类型和语法提供更多更具体的功能,以便实现针对环境的操作。其他宿主环境包括Node(一种服务端JavaScript平台)。

3.DOM也是应用编程接口(API)。

第2章 在HTML中使用JavaScript

1.带有src属性的<script>元素不应该在其<script>和</script>标签之间再包含额外的JavaScript代码。

第3章 基本概念

1.如果在函数中使用var定义一个变量,那么这个变量在函数推出后就会被销毁。

2.虽然省略var操作符可以定义全局变量,但这不是我们推荐的做法。

3.ECMAScript中有5种简单数据类型(也成为基本数据类型):Undefined、Null、Boolean、Number和String。还有1种复杂数据类型——Object,Object本质上是由一组无序的名值对组成的。Object类型不等于对象。ECMAScript种对象其实就是一组数据和功能的集合。

4.包含undefined值的变量与尚未定义的变量还是不一样的。对于后者,只能执行一项操作,即用typeof操作符检测其数据类型。

5.只要意在保存对象的变量还没有真正保存对象,就应该明确地让该变量保存null值。

6.永远不要测试某个特定的浮点数值(即像这样:a + b === 0.3)。

7.parseInt():不指定基数意味着让parseInt()决定如何解析输入的字符串,因此为了避免错误的解析,我们建议无论在什么情况下都明确指定基数。

8.按位非操作的本质:操作数的负值减1。虽荣用一元减操作符和加法操作符也能实现同样的效果,但由于按位非是在数值表示的最底层执行操作,因此速度更快。

9.我们可以利用逻辑或的短路行为来为变量赋值提供后备值,以避免为变量赋null或undefined值。

猜你喜欢

转载自www.cnblogs.com/huyue/p/9211529.html