JavaScript中的运算符

JavaScript提供了很多运算符,通过运算符,可以将变量连接成语句,语句是JavaScript代码中的执行单位。

赋值运算符

赋值运算符用于为变量指定变量值,与Java、C类似,JavaScript 也使用“=”作为赋值运算符。

通常,赋值运算符可以

  • 将一个常量值赋给变量
  • 可以将一个变量的值赋给另一个变量
  • 一次为多个变量赋值,因为赋值语句本身有值,赋值语句的值是等号(=)右边被赋的值
  • 将表达式的值赋给变量
//将变量str赋值为JavaScript
var str1 = "JavaScript";
//将变量pi赋值为3.14
var pi = 3.14;
//将变量赋值为true
var visited = true;
//将变量str赋值为JavaScript
var str2 = "JavaScript";
//将变量str的值赋给str2
var str3 = str2
//为a, b,c ,d赋值,四个变量的值都是7
var a =  b = c = d = 7;
//为变量x赋值为12.34
var x = 12.34;
//将表达式的值赋给y
var y = x + 5;

算术运算符

JavaScript支持所有基本算术运算符,这些算术运算符用于执行基本的如加、减、乘、除、求余等运算

  1. 加法运算符 +
  2. 减法运算符 -
  3. 乘法运算符 *
  4. 除法运算符 /
  5. 求余运算符 %
  6. 自增运算符 ++ 自增是单目运算符,而且有a++、++a之分
    a++代表先让a执行运算,而后自加
    ++a代表先自加,加完后让a执行运算
  7. 自减 - - 也分a- -,- -a之分,区别同上

关于计算,JavaScript还提供了Math()类完成一些如乘方,开方等等复杂运算,

<script type="text/javascript">
//定义变量a为3.2
var a = 3.2;
//求a的5次方,并将计算结果赋给b
var b= Math.pow(a,5) ;
//输出b的值
alert (b) ;
//求a的平方根,并将结果赋给c
var C = Math.sqrt(a) ;
//输出c的值
alert(c) ;
//计算随机数
var d = Math. random() ;
//输出随机数d的值
alert (d) ;
</script>

位运算符

JavaScript支持的位运算符与Java支持的位运算符基本相似,大致有如下7个位运算符。

  • & 按位云运算
  • | 按位或运算
  • ~ 按位非运算
  • ^ 按位异或运算
  • “<<” 左位移运算符
  • “>>” 右位移运算符
  • “>>>” 无符号右移运算符

在这里插入图片描述

加强的赋值运算符

赋值运算符可以与算术运算符、位运算符等结合,从而成为功能更加强大的运算符。结合
后的加强运算符如下。

  • +=: 对于x+=y,即对应于x=x+y。
  • =:对于x=y,即对应于x=x-y。
  • =:对于x=y,即对应于x=x*y。
  • /=: 对于x/=y,即对应于x=x/y。
  • %=:对于x%=y,即对应于x=x %y。
  • &=:对于x&=y,即对应于x=x&y。
  • |=:对于x|=y,即对应于x=x|y° .
  • ^ = :对于^ = &=y, 即对应于x=x^y。
  • <<=: 对于x<<=y,即对应于x=x<<y。
  • =: 对于x>>=y, 即对应于x=x>>y。

  • =:对于x>>>=y,即对应于x=x>>>y.
    所有的双目运算符都能与赋值运算符结合,从而成为功能更加强大的运算符

比较运算符

比较运算符用于判断两个变量或常量的大小,比较运算的结果是- - 个布尔值。JavaScript
支持的比较运算符如下。

  • 》 : 大于,如果前面变量的值大于后面变量的值,则返回true。
  • 》=:大于等于,如果前面变量的值大于等于后面变量的值,则返回true。
  • <:小于,如果前面变量的值小于后面变量的值,则返回true。
  • <=:小于等于,如果前面变量的值小于等于后面变量的值,则返回true。
  • !=: 不等于,如果前后两个变量的值不相等,则返回true。
  • = =: 等于,如果前后两个变量的值相等,则返回true。
  • != =:严格不等于,如果前后两个变量的值不相等,或者数据类型不同,都将返回true。
  • ===; 严格等于,必须前后两个变量的值相等,数据类型也相同,才会返回true。
    在上面的比较运算符中,前面5个比较常见。但后面的严格等于、严格不等于,与普通等
    于、普通不等于的区别在于是否支持自动类型转换。
注意
  1. 由于JavaScript可以自转类型,所以
<script type="text/javascript">
//判断5是否等于"5"
alert(5 == "5") ;
//判断5是否严格等于"5"
alert(5 === "5") ;
</script>

如果有个数字字符串 需要和数值比较,JavaScript可以将字符串类型自动转换为数值进行比较,所以5 == ‘5’是返回true的,但是他们本身类型不同,所以如果用严格等于5 = = = ‘5’,系统会返回false
2. 字母也可以用运算符比较,由于他们都能一一对应Unicode,所以字母比较时,将会比较他们的Unicode值,先比较第一个字母,如果相同,就比较第二个,以此类推

<script type="text/ javascript">
//先比较第一个字母,z的Unicode值比a的Unicode值大,返回true
alert("z">"abc") ; 
//先比较第一个字母,a的Unicode值比Z的Unicode值大,返回true
alert("abc" > "XYZ") ;
//前两个字母相同,比较第三个字母,C的Unicode值比B的Unicode值大,返回true
alert("ABC" > "ABB") ;
</script>

逻辑运算符

逻辑运算符用于操作两个布尔型的变量或常量。逻辑运算符主要有如下3个。

  • &&:与,必须前后两个操作数都为true才返回true, 否则返回false.
  • ||: 或,只要两个操作数中有一个为true, 就可以返回true, 否则返回false。
  • !:非,只操作一个操作数,如果操作数为true, 则返回false; 如果操作数为false, 则
    返回true。
注意

JavaScript 虽然没有提供| (在Java中被称为不短路或)、& (在Java中被称为不短路与)、^ (异或)等运算符,但实际上我们依然可将它们当成逻辑运算符使用。

三目运算符

三目运算符只有一个“?:”,三目运算符的语法格式如下:

(expression) ? if-true-statement : if- false-statement;
//例
2 > 1 ? alert("2大于1") : alert("2小于1")

三目运算符的运算规则是:先对逻辑表达式expression求值,如果逻辑表达式返回true,
则执行第二部分的语句;如果逻辑表达式返回false,则返回第三部分的语句

逗号运算符

逗号运算符允许将多个表达式排在一-起,整个表达式返回最右边表达式的值。

void运算符

void运算符用于强行指定表达式不会返回值。

typeof和instanceof运算符

typeof运算符用于判断某个变量的数据类型,它既可作为函数来使用,例如typeof(a)可返回变量a的数据类型;也可作为–个运算符来使用,例如typeofa也可返回变量a的数据类型。不同类型参数使用typeof运算符的返回值类型如下:

  • undefined 值: undefined。
  • null值: object。
  • 布尔型值: boolean。
  • 数字型值: number.
  • 字符串值: string。
  • 对象: object。
  • 函数, function。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值