JavaScript指南
语法和数据类型
注释
声明
变量声明 变量求值
用var或let声明且未赋初值的变量,值会被设定为undefined。 访问未声明的变量时,会抛ReferenceError异常 变量的作用域 变量声明提升(Variable hoisting) 函数提升(Function hoisting) 全局变量 var,let(块作用域的局部变量),const 常量const不可以改变值。他必须初始化为某个值。
数据结构和类型
数据类型
六种原型数据类型
Boolean布尔值; null表明null值的特殊关键字; undefined变量未定义时的属性; Number数值型; String字符串; Symbol(ES6新增)一种数据类型,它的实例是唯一且不可改变的; Object对象; JS是一种动态类型语言。声明变量时不必制定数据类型。 +
会把数字值转换为字符串。其他运算符不会。"30"+7
:307 "30"-7
:23字符串转换为数字 parseInt(string, radix);
parseFloat(string);
字面量Literals
数组字面量 布尔字面量 浮点数字面量 整数 对象字面量 RegExp literals 字符串字面量 数组字面量
var a = [3]; var fruit = ['apple', 'pire'];
布尔字面量
浮点数字面量
3.14 -.234567 -3.16e+6 .3e-19 对象字面量
var foo = {a: "lala" , 4 : "four" };
console.log (foo.a);
console.log (foo[4 ]);
console.log (foo["a" ]);
console.log (foo["4" ]);
RegExp 字面量
一个正则表达式是字符被斜线(/
)围成的表达式。如var re = /de+c/
字符串字面量
false等效值
false undefined null 0 NaN 空字符串""
流程控制与错误处理
对象操作语句
for ...in
for (variable in object){
statements
}
for ...in 语句除了遍历数组元素还会遍历用户自定义属性。
而for 循环不会遍历用户自定义数组属性
for each ...in
for each (var item in obj)
for each ...in 与 for ...in 相似,但是让对象属性的值递回取得,而不是作用于他们的名字。
try…catch 语句有一个包含一条或多条语句的try代码块,0个或多个catch代码块,catch代码块中的语句会在try代码块中抛出异常时执行。