JavaScript中采用弱类型变量,变量可以不做声明和不做类型说明,而在使用或赋值时确定类型。对变量声明的好处是能够及时发现程序中的错误,因为动态编译不易发现程序中的错误,特别是变量名称方面的。为了形成良好的编程风格,变量应该采取先定义再使用的方法。JavaScript中变量的定义用关键字var来实现。例如,定义一个名为id的变量:
<SCRIPT LANGUAGE="JavaScript">
var id;
</SCRIPT>
变量的命名
1)变量名不能与保留字冲突。
(2)变量名必须以字母或者下划线(_)开头,不能用数字或者其他非字母字符作为变量名开头。
(3)变量名中不能包含空格。
(4)JavaScript是区分大小写的,所以给变量命名时要考虑大小写的问题。
表达式与运算符
1.算术运算符
(1)加法运算符“+”:
(2)减法运算符“-”:
(3)乘法运算符“*”:
(4)除法运算符“/”:
(5)取模运算符“%”:
(6)递增运算符“++”:
(7)递减运算符“--”:
2.位运算符
(1)按位与“&”:对两个操作数进行与操作。
(2)按位或“|”:对两个操作数进行或操作。
(3)按位异或“^”:对两个操作数进行异或操作。
(4)按位取非“~”:单目运算符,对操作数进行按位取非操作。
(5)左移操作符“<<”:双目运算符,对左操作数进行向左移位,移动的位数为右操作数。
(6)右移操作符“>>”:双目运算符,对左操作数进行向右移位,移动的位数为右操作数。
(7)逻辑右移操作符“>>>”:双目运算符,对左操作数进行向右移位,移动的位数为右操作数。
3.逻辑运算符
(1)逻辑与“&&”:当两个操作数都为true时,结果为true,其他情况结果为false。
(2)逻辑或“||”:当两个操作数都为false时,结果为false,其他情况结果为true。
(3)逻辑非“!”:!true=false,!false=true。例如:!(1>2)= true,!(3<4)= false。
4.比较运算符
(1)等于“==”:判断两个操作数是否相等,若相等返回true,否则返回false。
(2)不等于“!=”:判断两个操作数是否不相等,若不相等返回true,否则返回false。
(3)小于“<”:若左操作数小于右操作数返回true,否则返回false。
(4)大于“>”:若左操作数大于右操作数返回true,否则返回false。
(5)小于等于“<=”:若左操作数小于等于右操作数返回true,否则返回false。
(6)大于等于“>=”:若左操作数大于等于右操作数返回true,否则返回false。
(7)严格等于“===”:比较时不进行类型转换,直接进行测试,如果两个操作数相等返回true,否则返回false。
(8)严格不等于“!==”:比较时不进行类型转换,直接进行测试,如果两个操作数不相等返回true,否则返回false。
5.赋值运算符
(1)“=”:将右边的值赋给左边的变量。
(2)“+=”:将左操作数与右操作数相加,结果赋值给左操作数。
(3)“-=”:将左操作数减去右操作数,结果赋值给左操作数。
(4)“*=”:将左操作数与右操作数相乘,结果赋值给左操作数。
(5)“/=”:将左操作数除以右操作数,结果赋值给左操作数。
(6)“%=”:将左操作数用右操作数求模,结果赋值给左操作数。
(7)“&=”:将左操作数与右操作数按位与,结果赋值给左操作数。
(8)“|=”:将左操作数与右操作数按位或,结果赋值给左操作数。
(9)“^=”:将左操作数与右操作数按位异或,结果赋值给左操作数。
(10)“<<=”:将左操作数左移,位数由右操作数确定,结果赋值给左操作数。
(11)“>>=”:将左操作数右移,位数由右操作数确定,结果赋值给左操作数。
(12)“>>>=”:将左操作数进行无符号右移,位数由右操作数确定,结果赋值给左操作数。
6.其他运算符
(1)条件操作符“(condition)?:val1,val2”:惟一的一个三目运算符。
(2)成员选择运算符“.”:用来引用对象的属性或方法。例如:document.write。
(3)下标运算符“[]”:用来引用数组的元素。例如:arr[3]。
(4)逗号运算符“,”:用来分开不同的值。例如:var a,b。
(5)函数调用运算符“()”:用来表示函数调用。例如:myFounction()。
(6)“delete”:用来删除对象、对象的属性、数组元素。
(7)“new”:用来生成一个对象的实例。例如:new myObject。
(8)“typeof”:用来返回操作数的类型。例如:typeof true的值为boolean。
(9)“void”:用于定义函数,表示不返回任何数值。例如:void myFounction()。
(10)“this”:用来引用当前对象。
运算符的优先级
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。