一、数据类型
JavaScript 有六种数据类型。主要的类型有 number、string、object 以及 Boolean 类型,其他两种类型为 null 和 undefined。 String 字符串类型:字符串是用单引号或双引号来说明的。
数值数据类型:JavaScript 支持整数和浮点数。整数可以为正数、0 或者负数;浮点数可以包含小数点、也可以包含一个 “e”(大小写均可,在科学记数法中表示“10的幂”)、或者同时包含这两项。
Boolean 类型:可能的 Boolean 值有 true 和 false。这是两个特殊值,不能用作 1 和 0。
Undefined 数据类型:一个为 undefined 的值就是指在变量被创建后,但未给该变量赋值以前所具有的值。
Null 数据类型:null 值就是没有任何值,什么也不表示。
object类型:除了上面提到的各种常用类型外,对象也是JavaScript中的重要组成部分,这部分将在后面章节详细介绍。
在 JavaScript 中变量用来存放脚本中的值,这样在需要用这个值的地方就可以用变量来代表,一个变量可以是一个数字,文本或其它一些东西。
JavaScript是一种对数据类型变量要求不太严格的语言,所以不必声明每一个变量的类型,变量声明尽管不是必须的,但在使用变量之前先进行声明是一种好的习惯。可以使用 var 语句来进行变量声明。如:var men = true; // men 中存储的值为 Boolean 类型。
变量命名:JavaScript 是一种区分大小写的语言,因此将一个变量命名为 computer 和将其命名为 Computer是不一样的。
另外,变量名称的长度是任意的,但必须遵循以下规则:
1.第一个字符必须是一个字母(大小写均可)、或一个下划线(_)或一个美元符 ($)。
2.后续的字符可以是字母、数字、下划线或美元符。
3.变量名称不能是保留字。
二、表达式和运算优先级
表达式 与数学中的定义相似,表达式是指具有一定的值的、用运算符把常数和变量连接起来的代数式。一个表达式可以只包含一个常数或一个变量。运算符可以是四则运算符、关系运算符、位运算符、逻辑运算符、复合运算符。
下表将这些运算符从高优先级到低优先级排列:
括号 |
(x) [x] |
中括号只用于指明数组的下标 |
求反、
自加、
自减
|
-x |
返回 x 的相反数 |
!x |
返回与 x (布尔值)相反的布尔值 |
x++ |
x 值加 1,但仍返回原来的 x 值 |
x-- |
x 值减 1,但仍返回原来的 x 值 |
++x |
x 值加 1,返回后来的 x 值 |
--x |
x 值减 1,返回后来的 x 值 |
乘、除 |
x*y |
返回 x 乘以 y 的值 |
x/y |
返回 x 除以 y 的值 |
x%y |
返回 x 与 y 的模(x 除以y 的余数) |
加、减 |
x+y |
返回 x 加 y 的值 |
x-y |
返回 x 减 y 的值 |
关系运算 |
x<y x<=y
x>=y x>y
|
当符合条件时返回 true 值,否则返回 false 值 |
等于、
不等于
|
x==y |
当 x 等于 y 时返回 true 值,否则返回 false 值 |
x!=y |
当 x 不等于 y 时返回 true 值,否则返回 false 值 |
位与 |
x&y |
当两个数位同时为 1 时,返回的数据的当前数位为 1,其他情况都为 0 |
位异或 |
x^y |
两个数位中有且只有一个为 0 时,返回 0,否则返回 1 |
位或 |
x|y |
两个数位中只要有一个为 1,则返回 1;当两个数位都为零时才返回零 |
位运算符通常会被当作逻辑运算符来使用。它的实际运算情况是:把两个操作数(即 x 和 y)化成二进制数,对每个数位执行以上所列工作,然后返回得到的新二进制数。由于“真”值在电脑内部(通常)是全部数位都是 1 的二进制数,而“假”值则是全部是 0 的二进制数,所以位运算符也可以充当逻辑运算符。 |
逻辑与 |
x&&y |
当 x 和 y 同时为 true 时返回 true,否则返回 false |
逻辑或 |
x||y |
当 x 和 y 任意一个为 true 时返回 true,当两者同时为 false 时返回 false |
逻辑与/或有时候被称为“快速与/或”。这是因为当第一操作数(x)已经可以决定结果,它们将不去理会 y 的值。例如,false && y,因为x == false,不管 y 的值是什么,结果始终是 false,于是本表达式立即返回 false,而不论 y 是多少,甚至 y 可以导致出错,程序也可以照样运行下去。 |
条件 |
c?x:y |
当条件 c 为 true 时返回 x 的值(执行 x 语句),否则返回 y 的值(执行 y 语句) |
赋值、
复合运算
|
x=y |
把 y 的值赋给 x,返回所赋的值 |
x+=y x-=y x*=y
x/=y x%=y
|
x 与 y 相加/减/乘/除/求余,所得结果赋给 x,并返回 x 赋值后的值 |