变量命名规则
必须以字母、下划线或美元符号开头,后面可以跟字母、下划线、美元符号和数字
变量名区分大小写,如:A与a是两个不同变量。
- 不允许使用JavaScript保留关键字做变量名:
- abstract、arguments
- boolean、break、byte
- case、catch、char、class*、const、continue
- debugger、default、delete、do、double
- else、enum、eval、export、extends*
- false、final、finally、float、for、function
- goto
- if、implements、import*、in、instanceof、int、interface
- let、long
- native、new、null
- package、private、protected、public
- return
- short、static、super*、switch、synchronized
- this、throw、throws、transient、true、try、typeof
- var、void、volatile
- while、with
- yield
- 不能用JavaScript 内置的对象、属性和方法的名称作为 Javascript 的变量或函数名:
- Array
- Date、eval
- function
- hasOwnProperty
- Infinity
- isFinite、isNaN、isPrototypeOf
- length
- Math
- NaN、name、Number
- Object
- prototype
- String
- toString
- undefined
- valueOf
变量赋值
使用=
来赋值
表达式
表达式是指具有一定的值、用操作符把常数和变量连接起来的代数式。一个表达式可以包含常数或变量。
操作符
运算符=
用于赋值。
运算符+
用于加值。
算数运算符
算术运算符用于执行变量与/或值之间的算术运算。
给定 y=5,下面的表格解释了这些算术运算符
| 运算符 | 描述 | 例子 | 结果 |
|—— | —-| —-| —-|
|+ | 加 | x=y+2| x=7|
|- | 减 | x=y-2| x=3|
||乘|x=y2|x=10|
|/|除|x=y/2|x=2.5|
|%|求余数 (保留整数)|x=y%2|x=1|
|++|累加|x=++y|x=6|
|–|递减|x=–y|x=4|
赋值运算符
赋值运算符用于给 JavaScript 变量赋值。
给定 x=10 和 y=5,下面的表格解释了赋值运算符:
运算符 | 例子 | 等价于 | 结果 |
---|---|---|---|
= | x=y | x=5 | |
+= | x+=y | x=x+y | x=15 |
-= | x-=y | x=x-y | x=5 |
*= | x*=y | x=x*y | x=50 |
/= | x/=y | x=x/y | x=2 |
%= | x%=y | x=x%y | x=0 |
用于字符串的 + 运算符
+
运算符用于把文本值或字符串变量加起来(连接起来)。
如需把两个或多个字符串变量连接起来,请使用+
运算符。
在以上语句执行后,变量 txt3 包含的值是 “What a verynice day”。
要想在两个字符串之间增加空格,需要把空格插入一个字符串之中:
或者把空格插入表达式中:
在以上语句执行后,变量 txt3 包含的值是:"What a very nice day"
对字符串和数字进行加法运算
|
|
结果是
规则是:
如果把数字与字符串相加,结果将成为字符串。
自增和自减
|
|
比较运算符
操作符 | 描述 |
---|---|
< | 小于 |
> | 大于 |
<= | 小于或等于 |
>= | 大于或等于 |
== | 等于 |
!= | 不等于 |
|
|
逻辑与操作符
|
|
只有&&两边同时为真,整个表达式才为真,先计算左边,如果为假,不再计算右边。即如果A为假,A && B为假,不会再执行B; 反之,如果A为真,要由 B 的值来决定 A && B 的值。
A | B | A && B |
---|---|---|
真(true) | 真(true) | 真(true) |
真(true) | 假(false) | 假(false) |
假(false) | 真(true) | 假(false) |
假(false) | 假(false) | 假(false) |
逻辑或操作符
|
|
只有||两边有一个为真,整个表达式就为真,先计算左边,如果为假,不再计算右边。即如果A为真,A || B为真,不会再执行B; 反之,如果A为假,要由 B 的值来决定 A || B 的值。
A | B | A \ | \ | B |
---|---|---|---|---|
真(true) | 真(true) | 真(true) | ||
真(true) | 假(false) | 真(true) | ||
假(false) | 真(true) | 真(true) | ||
假(false) | 假(false) | 假(false) |
逻辑非操作符
|
|
A | !A |
---|---|
真(true) | 假(false) |
假(false) | 真(true) |
操作符优先级
除法乘法优先级高于加减法
123var a = 1;var b = 2;var c = a + 20*2 - b;//c的值为39要想改变运算顺序,要用括号来改变优先级
123var a = 1;var b = 2;var c = (a + 20)*(2 - b);//c的值为0
操作符优先级由高到低:
- 算数操作符->比较操作符->逻辑操作符->”=”赋值符
同级运算从左到右,多层括号由里向外。
123var a = 1;var b = 2;var c = a * 10>30 || b < a//c为false