JavaScript程序设计(第2版)02.表达式与运算符
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
,结合性则是指具有同等优先级的运算符将按照怎样的顺序进行运算。结合性有向左结合和想右结合,例如表 达式 “a+b+c”,向左结合也就是先计算“a+b”,即“(a+b)+c”;而向右结合也就是先计算“b+c”,即 “a+(b+c)”。JavaScript运算符的优先级顺序及其结合性如表4-8所示。
表4-8
表4-4
常用的逻辑运算符
例4-2 下面应用比较运算符中的等于“==”、与“&&”和或“||”运算符来实现对〈Alt+←〉方向键和 〈Alt+→〉方向键的屏蔽。代码如下:
<script language="javascript"> function keydown(){ if((event.altKey)&&((window.event.keyCode==37)||(window.event.keyCode==39))){
表达式与运算符
本讲大纲: 1、表达式 2、运算符
2. 比较运算符 比较运算符用来连接操作数来组成比较表达式。比较运算符的基本操作过程是:首
先对操作数进行比较,然后返回一个布尔值true或false。在JavaScript中常用的比较运 算符如表4-3所示。
表4-3
常用的比较运算符
在JavaScript中常用的逻辑运算符如表4-4所示。
最基本的赋值运算符是等于号“=”,用于对变量进行赋值,而其他运算符可以和赋值运算符“=”联合使用, 构成组合赋值运算符。JavaScript支持的常用赋值运算符如表4-5所示。
表4-5
赋值运算符
例4-3 下面应用赋值运算符给指定的变量赋值,并进行加、减、乘等计算功能。代码如下:
<script language="javascript"> var a=1,b=2; document.writeln("a=1,b=2"); document.writeln(""); document.write("a+=b = "); a+=b; document.writeln(a); document.write("b+=a = "); b+=a; document.writeln(b); document.write("a-=b = "); a-=b; document.writeln(a); document.write("b*=a = "); b*=a; document.writeln(b); </script>
JavaScript运算符的优先级与结合性
例4-4 下面是使用()来改变运算优先级的示例。表达式“a=1+2*3”的结 果为7,因为乘法的优先级比加法的优先级高,将被优先运行。通过括号 “()”运算符的优先级改变之后,括号内表达式将被优先执行,所以表达式 “b=(1+2)*3”的结果为9,代码如下。
例如:下面是应用typeof运算符返回当前所容纳数据类型,代码如下:typeof true
(3)new运算符
通过new运算符来创建一个新对象。 语法: new constructor[(arguments)]
lconstructor参数为必选项。对象的构造函数。如果构造函数没有参数,则可以省略圆括号。 larguments参数可选项。任意传递给新对象构造函数的参数。
event.returnValue=false; alert("当前设置不允许使用Alt+方向键←或方向键→"); } } </script> <body onkeydown="keydown()"> </body>
在IE浏览器中运行该文件,结果如图4-2所示。
图4-2 比较运算符的应用
3.赋值运算符
在IE浏览器中运行该文件,结果如图4-3所示。
图4-3 赋值运算符的应用
4.布尔运算符 在JavaScript中增加了几个布尔逻辑运算符,JavaScript支持的常用布尔运算符如表4-6所示。
表4-6
布尔运算符
其中,三目运算符主要格式如下:
操作数?结果1:结果2
若操作数的结果为真,则表达式的结果为“结果1”,否则为“结果2”。
例如:应用new运算符来创建新对象,代码如下:
Object1 = new Object; Array2 = new Array(); Date3 = new Date("August 8 2008");
7.运算符优先级 JavaScript运算符都有明确的优先级与结合性。优先级较高的运算符将先于优先级较低的运算符进行运算
5.条件运算符 条件运算符是JavaScript支持的一种特殊的三目运算符,其语法格式如下:
操作数?结果1:结果2
如果“操作数”的值为true,则整个表达式的结果为“结果1”,否则为“结果2”。
6.其他运算符 (1)位操作运算符
位运算符分为两种,一种是普通位运算符,另一种是位移动运算符。在进行运算前,都先将操作数转
<script language="javascript"> <!--
var a=1+2*3; var b=(1+2)*3; 级 alert("a="+a+"\nb="+b); --> </script>
//分行输出结果
//按自动优先级计算 //使用()改变运算优先
在IE浏览器中运行该文件,结果如图4-4所示。
换为32位的二进制整数,然后再进行相关运算,最后的输出结果将以十进制表示。位操作运算符对数值 的位进行操作,如向左或向右移位等。JavaScript中常用的位操作运算符如表4-7所示。
表4-7
位操作运算符
(2)typeof运算符 typeof运算符返回它的操作数当前所容纳的数据的类型。这对于判断一个变量是否已被 定义特别有用。
图4-4 优先级的使用
表4-8
表4-4
常用的逻辑运算符
例4-2 下面应用比较运算符中的等于“==”、与“&&”和或“||”运算符来实现对〈Alt+←〉方向键和 〈Alt+→〉方向键的屏蔽。代码如下:
<script language="javascript"> function keydown(){ if((event.altKey)&&((window.event.keyCode==37)||(window.event.keyCode==39))){
表达式与运算符
本讲大纲: 1、表达式 2、运算符
2. 比较运算符 比较运算符用来连接操作数来组成比较表达式。比较运算符的基本操作过程是:首
先对操作数进行比较,然后返回一个布尔值true或false。在JavaScript中常用的比较运 算符如表4-3所示。
表4-3
常用的比较运算符
在JavaScript中常用的逻辑运算符如表4-4所示。
最基本的赋值运算符是等于号“=”,用于对变量进行赋值,而其他运算符可以和赋值运算符“=”联合使用, 构成组合赋值运算符。JavaScript支持的常用赋值运算符如表4-5所示。
表4-5
赋值运算符
例4-3 下面应用赋值运算符给指定的变量赋值,并进行加、减、乘等计算功能。代码如下:
<script language="javascript"> var a=1,b=2; document.writeln("a=1,b=2"); document.writeln(""); document.write("a+=b = "); a+=b; document.writeln(a); document.write("b+=a = "); b+=a; document.writeln(b); document.write("a-=b = "); a-=b; document.writeln(a); document.write("b*=a = "); b*=a; document.writeln(b); </script>
JavaScript运算符的优先级与结合性
例4-4 下面是使用()来改变运算优先级的示例。表达式“a=1+2*3”的结 果为7,因为乘法的优先级比加法的优先级高,将被优先运行。通过括号 “()”运算符的优先级改变之后,括号内表达式将被优先执行,所以表达式 “b=(1+2)*3”的结果为9,代码如下。
例如:下面是应用typeof运算符返回当前所容纳数据类型,代码如下:typeof true
(3)new运算符
通过new运算符来创建一个新对象。 语法: new constructor[(arguments)]
lconstructor参数为必选项。对象的构造函数。如果构造函数没有参数,则可以省略圆括号。 larguments参数可选项。任意传递给新对象构造函数的参数。
event.returnValue=false; alert("当前设置不允许使用Alt+方向键←或方向键→"); } } </script> <body onkeydown="keydown()"> </body>
在IE浏览器中运行该文件,结果如图4-2所示。
图4-2 比较运算符的应用
3.赋值运算符
在IE浏览器中运行该文件,结果如图4-3所示。
图4-3 赋值运算符的应用
4.布尔运算符 在JavaScript中增加了几个布尔逻辑运算符,JavaScript支持的常用布尔运算符如表4-6所示。
表4-6
布尔运算符
其中,三目运算符主要格式如下:
操作数?结果1:结果2
若操作数的结果为真,则表达式的结果为“结果1”,否则为“结果2”。
例如:应用new运算符来创建新对象,代码如下:
Object1 = new Object; Array2 = new Array(); Date3 = new Date("August 8 2008");
7.运算符优先级 JavaScript运算符都有明确的优先级与结合性。优先级较高的运算符将先于优先级较低的运算符进行运算
5.条件运算符 条件运算符是JavaScript支持的一种特殊的三目运算符,其语法格式如下:
操作数?结果1:结果2
如果“操作数”的值为true,则整个表达式的结果为“结果1”,否则为“结果2”。
6.其他运算符 (1)位操作运算符
位运算符分为两种,一种是普通位运算符,另一种是位移动运算符。在进行运算前,都先将操作数转
<script language="javascript"> <!--
var a=1+2*3; var b=(1+2)*3; 级 alert("a="+a+"\nb="+b); --> </script>
//分行输出结果
//按自动优先级计算 //使用()改变运算优先
在IE浏览器中运行该文件,结果如图4-4所示。
换为32位的二进制整数,然后再进行相关运算,最后的输出结果将以十进制表示。位操作运算符对数值 的位进行操作,如向左或向右移位等。JavaScript中常用的位操作运算符如表4-7所示。
表4-7
位操作运算符
(2)typeof运算符 typeof运算符返回它的操作数当前所容纳的数据的类型。这对于判断一个变量是否已被 定义特别有用。
图4-4 优先级的使用