<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JavaScript语言基础2</title>
</head>
<body>
<script type="text/javascript">
//8.运算符与表达式
//8.1算术运算符: +(正)、-(负)、+(加)、-(减)、*、/(除)、%(取余) 、++、--
var a=1234;
//alert( "a=" +(a/1000*1000) );//结果:a=1234,,js中没有整数一说,因此两个整数相除结果不一定是整数---js中都是number(包括整数和浮点)
//alert( "a2=" +a/1000*1000 );//结果:a2=1234,,注意,没有像Java那样先进行字符串连
//优先级问题
var x=1.2;
var y=2.8;
//alert("x+y="+x+y); //x+y=1.22.8 ----数学加(+)的优先级没有比字符串连接(+)的高 ,但是数学的乘除(*,/)的优先级比字符串连(+)的高
//alert("x+y="+(x+y)); //x+y=4
//有关+-的一些细节
//alert(12+1);//13
//alert("12"+1);//121
//alert("12"-1);//11
//alert(true); //true
//alert(true+1); //2 boolean用法在计算时默认true的值为1,false的值为0
//alert(false+1);//1
//%(取余)的功能和Java完全一样,即:先用绝对值取余,然后让结果和第一个数同符号
//alert(100%3);//1
//alert(100%-3);//1
//alert(-100%3);//-1
//++、-- 用法和Java一样
var n=5,m;
m=n++;
//alert("n="+n+",m="+m);//n=6,m=5
var n=5,m;
m=++n;
//alert("n="+n+",m="+m);//n=6,m=6
//8.2 赋值运算符:= 、+= -= *= /= 和Java用法一样
var x=10;
x +=5;
//alert("x="+x); //x=15
//8.3 关系运算符:==、!=、>、<、>=、<=
var y=2;
//alert(y==3); //true
//alert(y=3); //结果: 3
y=4;
//if(y=3){ //boolean ---和Java一样,true和false都是小写,但有一点区别:js中的布尔型值有0 和 非0 的概念,
// 且在计算时true的值为1,false的值为0,在这里y=3是赋值,结果非0;
/*
if(3==y){ //写布尔表达式判断相等时,数值常量一定要写在前面,以防埋下类似if(y=3)的坑---结果一直为true
alert("OK");
}else{
alert("NO");
}//结果:弹出"OK"
*/
//alert(y!=3);
//alert(y>=3);
//8.4 逻辑运算符: &&(条件与)、||(条件或)、!(非) ----JS中只有这三个逻辑运算符,而Java还有:&(与)、|(或)、∧(异或)
var t=4;
//alert( t>3 & t<10 ); //1
//alert( t>3 && t<10 );//true
//8.5 位运算符:~(非)、&(与)、|(或)、^(异或)、<<(左移位)、>>(右移位)、>>>(无符号右移位)
var c=6;
//alert(c&3); // 110&011 = 010
//alert(c^100^100);//6
//8.6 条件运算符(问号表达式,三元运算符): 表达式1 ? 表达式2 : 表达式3
alert( c>30? 1:2.5 ); //2.5
</script>
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JavaScript语言基础2</title>
</head>
<body>
<script type="text/javascript">
//8.运算符与表达式
//8.1算术运算符: +(正)、-(负)、+(加)、-(减)、*、/(除)、%(取余) 、++、--
var a=1234;
//alert( "a=" +(a/1000*1000) );//结果:a=1234,,js中没有整数一说,因此两个整数相除结果不一定是整数---js中都是number(包括整数和浮点)
//alert( "a2=" +a/1000*1000 );//结果:a2=1234,,注意,没有像Java那样先进行字符串连
//优先级问题
var x=1.2;
var y=2.8;
//alert("x+y="+x+y); //x+y=1.22.8 ----数学加(+)的优先级没有比字符串连接(+)的高 ,但是数学的乘除(*,/)的优先级比字符串连(+)的高
//alert("x+y="+(x+y)); //x+y=4
//有关+-的一些细节
//alert(12+1);//13
//alert("12"+1);//121
//alert("12"-1);//11
//alert(true); //true
//alert(true+1); //2 boolean用法在计算时默认true的值为1,false的值为0
//alert(false+1);//1
//%(取余)的功能和Java完全一样,即:先用绝对值取余,然后让结果和第一个数同符号
//alert(100%3);//1
//alert(100%-3);//1
//alert(-100%3);//-1
//++、-- 用法和Java一样
var n=5,m;
m=n++;
//alert("n="+n+",m="+m);//n=6,m=5
var n=5,m;
m=++n;
//alert("n="+n+",m="+m);//n=6,m=6
//8.2 赋值运算符:= 、+= -= *= /= 和Java用法一样
var x=10;
x +=5;
//alert("x="+x); //x=15
//8.3 关系运算符:==、!=、>、<、>=、<=
var y=2;
//alert(y==3); //true
//alert(y=3); //结果: 3
y=4;
//if(y=3){ //boolean ---和Java一样,true和false都是小写,但有一点区别:js中的布尔型值有0 和 非0 的概念,
// 且在计算时true的值为1,false的值为0,在这里y=3是赋值,结果非0;
/*
if(3==y){ //写布尔表达式判断相等时,数值常量一定要写在前面,以防埋下类似if(y=3)的坑---结果一直为true
alert("OK");
}else{
alert("NO");
}//结果:弹出"OK"
*/
//alert(y!=3);
//alert(y>=3);
//8.4 逻辑运算符: &&(条件与)、||(条件或)、!(非) ----JS中只有这三个逻辑运算符,而Java还有:&(与)、|(或)、∧(异或)
var t=4;
//alert( t>3 & t<10 ); //1
//alert( t>3 && t<10 );//true
//8.5 位运算符:~(非)、&(与)、|(或)、^(异或)、<<(左移位)、>>(右移位)、>>>(无符号右移位)
var c=6;
//alert(c&3); // 110&011 = 010
//alert(c^100^100);//6
//8.6 条件运算符(问号表达式,三元运算符): 表达式1 ? 表达式2 : 表达式3
alert( c>30? 1:2.5 ); //2.5
</script>
</body>
</html>