JavaScript运算符

1. 算术运算符

//算术运算符主要有:+ - * / % ++ --
//关于自加自减 在前:先算后用 在后:先用后算
var num = 5 ;
num++;// num = num + 1
console.log(num);//输出6
console.log(num++);//输出6
console.log(num);//输出7
console.log(++num);//输出8

//关于取模 可以用于判断数据奇偶性
var num;
num % 2 == 0//为偶数
num % 2 == 1//为奇数

//关于优先级
//与数学中的计算方法一致

2. 关系运算符

//关系运算符主要有:> < >= <= == != === !=== 结果是boolean类型

//== 判断2个数据(值)是否相等  != 判断2个数据是(值)否不相等
var str = '100';
var n = 100;
console.log(str == n)//返回 true

//=== 判断2个数据的值和类型是否完全相等  !== 判断2个数据的值和类型是否不完全相等
console.log(str === n)//返回 false

//string 和 number 比较大小时,会自动将string用number()函数转换为number类型比较大小
//任何一个数据与NaN比较大小时,都会返回false
console.log('a' > n);//返回false

//string 和string 比较大小根据字符的Unicode码比较
console.log('陈gy' < '张xy');//返回false

3. 逻辑运算符

//逻辑运算符主要有:&& || !

//&&(与):多个条件均满足返回true,否则false。
var pg = prompt('请输入笔试成绩:');
var fg = prompt('请输入面试成绩:');
sonsole.log(pg>=60 && fg>=60);//输入80 60时,返回true  输入80 50时,返回false
//短路与:当第一个条件为假,结果返回false,并且将不会判定后面的表达式

//||(或):当一个条件满足返回true,所有条件均不满足返回false
sonsole.log(pg>=60 || fg==100);//输入50 100时,返回true  输入50 50时,返回false
//短路或:当第一个条件为真,结果返回true,并且将不会判定后面的表达式
//!:逻辑取反,常用场合有判断一个数是否位数字
console.log(!isNaN(pg));//返回true,pg是一个数字。

4. 位运算符

//位运算符主要有:& | << >> ^ 只能作用于数字运算,并且将数字转化为二进制,再运算。

//&:位与运算,每一位的数字对应都为1时,结果才是1,否则为0
var num1 = 5; //-------------101                          
var num2 = 3;//--------------011
var r = num1 & num2;//-------001
//与1做位与运算可判断数字的奇偶性
console.log(10 & 1 == 0);//true 是偶数
console.log(5 & 1 == 0);//false 是奇数

//|:位或运算,每一位的数字对应有一个1时,结果为1,全为0时,结果为0
var num1 = 5; //-------------101                          
var num2 = 3;//--------------011
var r = num1 | num2;//-------111
//与0做位或运算可以将浮点数转换为整数
var num3 = 19.6;
console.log(num | 0);//输出19

//<<:按位左移,将二进制数向左移几位,右边就补多少个0
console.log(num1 << 2)//-----101-->10100 

//>>:按位右移,将二进制数向右移几位,左边就补多少个0
console.log(num1 >> 2)//-----101-->001

//^:异或运算,将两边的数据对应位比较,只有一个为1时,结果才为1,否则为0
var num1 = 5; //-------------101                          
var num2 = 3;//--------------011
var r = num1 ^ num2;//-------110
//可用于数据交换
num1 = num1 ^ num2;//-->num1 = 110
num2 = num1 ^ num2;//-->num2 = 101
num1 = num1 ^ num2;//-->num1 = 011

5. 赋值运算,单、双、三目运算

//拓展表达式+= -= *= /= %= &= |= ^=
//+=:num1 = num1+num2  -----其他同理
//单目运算符:++ -- !
//双目运算符:+ - * / && || ^ > <等
//三木运算符:需要3个表达式  表达式1? 表达式2 : 表达式3;
//表达式1结果应为boolean型,结果为true时执行2,为false时执行3
//允许嵌套
var grade = prompt('请输入一个成绩:');
var msg = score >= 80 ? "优秀" : score>=60 ? "合格":"不及格";
console.log(msg);//输入大于80优秀,60~80合格,低于60不及格
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值