变量
在JavaScript中存储数据值的容器
var x = 7;
var y = 8;
var z = x + y;
标识符
JavaScript变量必须以唯一的名称标识;
这些唯一名称被称为标识符
通用规则:
- 名称可包含字母、数字、下划线和美元符号
- 名称必须以字母开头
- 名称也可以 $ 和 _ 开头(但是在本教程中我们不会这么做)
- 名称对大小写敏感(y 和 Y 是不同的变量)
- 保留字(比如 JavaScript 的关键词)无法用作变量名称
数据类型
JavaScript是弱类型的语言,即JavaScript拥有动态类型。相同变量可以用作不同类型
数值
JavaScript只有一种数值类型
注:把数字放在引号中,会被视为文本字符串
字符串值
注:当数值和字符串相加时,JavaScript将数值视作字符串
布尔值
true
和false
数组
数组用方括号书写,数组项目用逗号隔开
var cars = ["Porsche", "Volvo", "BMW"];
对象
JavaScript对象用花括号书写
对象属性是name:value对,由逗号分隔
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
注:
在JavaScript中,null是“nothing”,被看做不存在的事物,数据类型是对象
可以通过设置值为null清空对象/也可以设置值为undefined清空对象
null 与undefined
Undefined 与 null 的值相等,但类型不相等
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true
原始数据
原始数据值是一种没有额外属性和方法的单一简单数据值。
typeof 运算符可返回以下原始类型之一:
- string
- number
- boolean
- undefined
typeof "Bill" // 返回 "string"
typeof 3.14 // 返回 "number"
typeof true // 返回 "boolean"
typeof false // 返回 "boolean"
typeof x // 返回 "undefined" (假如 x 没有值)
复杂数据
typeof 运算符可返回以下两种类型之一:
- function
-typeof 运算符不会把函数返回 object。而是function - object
-typeof 运算符把对象、数组或 null 返回 object。
typeof {name:'Bill', age:62} // 返回 "object"
typeof [1,2,3,4] // 返回 "object" (并非 "array",参见下面的注释)
typeof null // 返回 "object"
typeof function myFunc(){} // 返回 "function"
创建
var 关键字声明JavaScript变量:var carName;
注:
- 声明后,变量是无值的,本质上是undefined
- 重复声明JavaScript的变量,变量不会丢失值
运算符
算数运算符
用于对数字执行算数运算
赋值运算符
赋值运算符想JavaScript变量赋值
字符串运算符
+
运算符可以用于对字符串进行相加(concatenate,级联)
txt1 = "Bill";
txt2 = "Gates";
txt3 = txt1 + " " + txt2;
+=
赋值运算符也可以用于相加字符串
txt1 = "Hello ";
txt1 += "Kitty!";
注:在用于字符串时,+
运算符被称为级联运算符
比较运算符
逻辑运算符
类型运算符
位运算符
位运算符处理32位数
该运算中的任何数值运算数都会被转化为32的数,结果会被转换会JavaScript数