JavaScript运算符实例详解



  根据处理对象的数目:

  单元运算符;

  二元运算符;

  三元运算符。

  根据功能:

  赋值运算符;

  =  +=  -=  *=  /=  %=(取余)

  算术运算符;

  +  -  *  /  %(取余)  ++(递增)  --(递减) -

  例1:

以下是引用片段:
<Script>
var x = 11; 
var y = 5;
with (document) {
     write("x = 11, y = 5");
     write("<LI>x + y 是 ", x + y);
     write("<LI>x - y 是 ", x - y);
     write("<LI>x * y 是 ", x * y);
     write("<LI>x / y 是 ", x / y);
     write("<LI>x % y 是 ", x % y);
     write("<LI>++ x 是 ", ++ x);
     write("<LI>-- y 是 ", -- y);
}
</Script>


  例2:

以下是引用片段:
<Script>
var x = y = 3; 
with (document) {
     write("x = 3, y = 3 <br>");
     write("若x = y++ 运算之后:");
     x = y++;//y→x,y+1→y
     write("x 是 ", x, "; y 是 ", y, "<br>");
     write("再作x = ++y 运算:");
     x = ++y;//y+1→x,y+1→y
     write("x 是 ", x, "; y 是 ", y);
}
</Script>
  字符串运算符;

  +  +=

  比较运算符;

  ==  !=  ===(值及类型)  !==(值及类型)

  <  <=  >  >=

  例:

以下是引用片段:
<Script>
var x = 5; //x 是数值5
var y = '5'; //y 是字符串5
var z = 6; //x 是数值6
with (document) {
     write("x = 5, y = '5', z = 6");
     write("<LI>x == y 吗?", x == y);
     write("<LI>x === y 吗?", x === y);
     write("<LI>x != y 吗?", x != y);
     write("<LI>x !== y 吗?", x !== y);
     write("<LI>x <= z 吗?", x <= z);
     write("<LI>y <= z 吗?", y <= z);
     //类型自动转换
}
</Script>
  逻辑运算符;

  &&  ||  !

  例1:

以下是引用片段:
<Script>
var t = true;
var f = false;
with(document) {
write("<OL><LI>true && true 的结果是 ", t && t);
write("<LI>true && false 的结果是 ", t && f);
write("<LI>false && true 的结果是 ", f && t);
write("<LI>false && false 的结果是 ", f && f);
write("<LI>true && (1==1) 的结果是 ", t && (1==1));
write("<LI>false && 'A' 的结果是 ", f && 'A');
write("<LI>'A' && false 的结果是 ", 'A' && f);
write("<LI>true && 'A' 的结果是 ", t && 'A');
write("<LI>'A' && true 的结果是 ", 'A' && t);
write("<LI>'A' && 'B' 的结果是 ", 'A' && 'B');
     //&&:有一个不是逻辑值,只要第一个操作数的值为flase,则返回第一个操作数的值flase,否则,返回第二个操作数的值
}
</Script>
  例2:

以下是引用片段:
<Script>
var t = true;
var f = false;
with(document) {
write("<OL><LI>true || true 的结果是 ", t || t);
write("<LI>true || false 的结果是 ", t || f);
write("<LI>false || true 的结果是 ", f || t);
write("<LI>false || false 的结果是 ", f || f);
write("<LI>true || (1==1) 的结果是 ", t || (1==1));
write("<LI>false || 'A' 的结果是 ", f || 'A');
write("<LI>'A' || false 的结果是 ", 'A' || f);
write("<LI>true || 'A' 的结果是 ", t || 'A');
write("<LI>'A' || true 的结果是 ", 'A' || t);
write("<LI>'A' || 'B' 的结果是 ", 'A' || 'B');
     //||:有一个不是逻辑值,只要第一个操作数为的值true、字符或非零的数字,则返回第一个操作数的值,否则,返回第二个操作数的值
}
</Script>
  例3:

以下是引用片段:
<Script>
with(document) {
     write("<LI>!true 的结果是 ", !true);
     write("<LI>!false 的结果是 ", !false);
     write("<LI>!'A' 的结果是 ", !'A');
     write("<LI>!0 的结果是 ", !0);}
</Script>


  逐位运算符;

  特殊运算符。

  1、new运算符:创建对象(实例)

  格式:对象名称=new 对象类型(参数)

  2、this运算符:表示当前对象

  格式:this[.属性]

  例:

以下是引用片段:
<Script>
function validate(obj) {
     alert("你输入的值是:"+ obj.value);
} </Script>
请输入任意字符:<BR>
<INPUT TYPE="text" onKeyup="validate(this)">
  3、条件运算符:三元运算符

  格式:<条件表达式> ? 第一个值:第二个值

  例: 以下是引用片段:
NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1: 0; 
window.screen.width>800 ? imgheight=100:imgheight=100
window.screen.width>800 ? imgleft=15:imgleft=122 
<Script>
function showSex() {
onOroff = document.forms[0].sex[0].checked
status = (onOroff)? "帅哥" : "美女"
alert("Hello! " + status)
}
</Script> 
请输入你的性别:
<FORM onClick=showSex()>
<INPUT TYPE=radio NAME=sex>男生
<INPUT TYPE=radio NAME=sex>女生
</FORM>

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3