我们先了解一些运算符:
一、算术运算符
- 加"+"、减"-"、乘"*"、除"/"、取余"%";还有等差偏移量(1,4,7,10,13,16,19)的概念;
- 自增自减:(1)自增“++”,加号在后,先参与运算再自增;加号在前,先自增再参与是运算;(2)自减“–”,同上;
<script>
var a=3;
var b=5*a++; //15
var c=5*++a; //20
document.write(a,"<br/>",b);
</script>
二、字符串运算符
在字符串运算符中,“+”表示连接,不是加法;如果“+”一侧是字符串,表示连接,并不是加法运算;
<script>
var a="1"+1;
var b="我要自学网"+"www.51zxw.net";
//字符串拼接练习
var name=prompt("请输入姓名:");
var b=prompt("请输入课程:");
document.write('<div style="color:red;font-size:300px">'+name+'在"我要自学网"学习了'+b+'课程</div>');
</script>
- 如果“+”两侧的值为数字型,可进行正常数值运算; 如果“+”有一侧为字符串,表示连接;
var a=1+1 ;var b="1"+1;
//2,11 - 如果存在纯数字字符串(“5”),除了加法运算以外,计算机自动转其为数字型运算;
var a="6"-2;
如果有一侧为非纯数字字符串,结果为NaN(非数字类型);var a="51zxw"-2;
- 用来做纯数字字符串转数值类型;
var a="6"*1;document.write(typeof a); //number;
三、赋值运算符
- =:基本赋值运算符是“=”,一开始认为它是”等于“,其实不是的,可读做“等于”;
- +=、-=、*=、/=、%=:先运算再赋值;
四、关系运算符
- 关系(比较)运算符:
>、<、>=、<=、==(等于)、!=(不等于)、===(全等)、!==(不全等);
- 关系运算符的运算结果是布尔值:true或false;
>、<、>=、<=、==(等于)、!=(不等于)只比较数值,不比较类型;
===(全等)、!==(不全等)既比较值也比较类型;
//只比较值,不比较类型
var b;
b="4">3;//true; b=4<"6";//true; b="4">="3";//true; b="4"<3;//true;
b="4"=="4"//true; b=4!="3";//true;
//既比较值,也比较类型
b=4===4;//true; b="4"===4;//false; b="4"==="4"'//true; b=4!==5;//true;
b="4"==4;//true;b="4"!=="4";//false;
五、字符串比较
字符串可以比较;字符串会转成ASCII码值,再比较;字母越靠后越大,小写字母比大写字母大;从左到右比较,直至比较出结果。
var b;
b="a'>"b";//false;
b="a"<"C";//false;
b="abc">"Def";//true;
b="abc"<"aef";//true;
b="张三"<"李四";
document.write(b);
六、逻辑运算符
1.逻辑运算符:&&(与)、||(或)、!(非);
2.逻辑运算符结果只有两个:true或false;
3.运算符综合运用:按运算符优先级,逻辑运算符要比关系运算符优先级高,括号“()”可以改变运算符的优先级;
<script>
var b=!5<3||4<8; //true;
document.write(b);
</script>
4.判断字符串是否为空
<script>
var a=prompt();
var b;
b=a=="";
// b=!a==""'
document.write(b);
</script>
5.逻辑运算符可以对任何类型的数据进行运算,运算的时候转化为对应的布尔值。undefined:假;Null:假;false:假;Number:除0外都是真;string:除空字符串以外都是真;对象{}:不管有无内容,都是真;
七、三元运算符
三元运算符又称:三目运算符、三元表达式;
语法结构:条件?为真时返回的数据:为假时返回的数据;
<script>
var a=prompt("请输入年龄");
var b=prompt("请输入年薪,单位:万");
var c=a>20?"可以娶老婆":"不准娶老婆";
var d=a>20&&a<60?"可以娶老婆":"不准娶老婆";
var e=a>20&&(a<60||b>100)?"可以娶老婆":"不准娶老婆";
document.write(c);
</script>
```