DOM Scripting

这本书讲了哪些内容:

JS 的历史:JS 的起源,浏览器(Netscape Navigator & Internet Explorer)之间的竞争,网景(Netscape)公司为了对抗微软,联合 Sun 公司和 ECMA 对 JS 进行标准化——ECMAScript,JS 作为解释型脚本语言存在(与 Java 这种编译型语言不同),JS 能够使开发者操作浏览器,DOM(一种概念化文档的方式),世界对象模型(生活中的事物、抽象概念),DOM Level 0,W3C 推出标准化 DOM(这使得任何程序设计语言都能对标记语言写出来的文档进行操控),DOM Level 1(1998.10),DOM 是一种 API(API 是一组已经得到有关各方共同认可的基本约定)。

JS 的语法:语句,注释,变量(variable),赋值(将值存入变量),字面量(literal),数组,操作符,条件语句,循环语句,函数,对象。

DOM:节点,getElementById,getElementsByTagName,getElementsByClassName,getAttribute,setAttribute

编译型语言与解释型语言的区别?

  1. 在错误提示方面,前者先编译后运行,在编译时即可提示代码 bug;而后者只有在执行到错误代码位置时,才会提示错误
  2. 与解释型语言相比,编译型语言速度更快,可移植性更好

通过理解英语,来理解什么是解释型语言。

驼峰格式是函数名、方法名和对象属性名命名的首选格式。

变量命名时,首字母为什么不能是数字?

通过反引号引入变量: `${myVar}`

变量名的命名规则?

  1. 不包含空格、标点符号($ 除外)
  2. 允许包含字母、数字、美元符号和下划线(但首字母必须为非数字)

JS 最重要的三种数据类型:字符串,数值,布尔值。

转义字符

一个数组作为另一个数组的元素

#对象

用点号获取属性和花括号语法创建对象。

#操作

自增、自减

字符串与数值之间的类型转换:

  1. 字符串拼接数字,成为字符串
  2. 两个数字拼接,成为数值

+= 加法和赋值

#条件语句

if…else…

为什么赋值运算并非总是返回真值?

#循环语句

do…while 循环内部的代码至少执行一次

#函数

传参

#变量的作用域

全局变量:可在任何位置被引用,它的作用域是整个脚本;

局部变量:只存在于声明它的函数内部,作用域仅限于当前函数

仅在函数内部使用的变量一定为局部变量

#对象

对象是自包含的数据集合,包含在对象里的数据可以通过两种形式访问——属性和方法:

  • 属性是隶属于某个特定对象的变量
  • 方法是只有某个特定对象才能调用的函数

为了用对象描述目标事物,需要创建对象实例

创建自己的对象——用户定义对象,与之对应的是内建对象:Array,Math,Date

宿主对象:由运行环境提供,如 document

Layout of comment panels