JavaScript运算符

1,赋值运算符

用‘=‘连接,作为赋值运算符
通常用常量值赋给变量

var str = "javaScript";

也可以变量赋给变量

var a = "opo";
var b = a;

也可以表达式赋给变量

var a = 9;
var c = a+5;

2,算数运算符

+ - * / :加减乘除
%:取余

var a = 5.2;
var b = 3.1;
var mod = x % y;//mod为2.1

++ :自加(操作符在前,先自加;操作符在后,后自加)
- - :自减同上

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
        var a=5;
        var b=5;
        var c = a++ + 4;
        var d = ++b + 4;
        alert(a+"\n"+b+"\n"+c+"\n"+d);//结果:6  6  9  10 
    </script>
</body>
</html>

复杂的算数运算需要借助Math下的类方法

*Math.pow();---->乘方运算
*Math.sqrt();---->开方运算
*Math.random();------>0.0 ~ 1.0(不包含) 之间的一个伪随机数。
生成一个min~max[min,max)的随机数
-----Math.random() * (max - min) + min;
-----例如:生成[10,20)的随机数
-----Math.random() * (20 - 10) + 10; //不含最大值,含最小值
生成一个min~max [min,max)的随机整数
-----Math.floor(Math.random() * (max - min)) + min;
-----例如:生成[10,20)的随机整数
-----Math.floor(Math.random() * (20 - 10)) + 10; //不含最大值,含最小值
如果生成一个[min,max]即含最大值也含最小值的随机整数
-----Math.floor(Math.random() * (max- min+1)) + min; //含最大值,含最小值

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
        var a=5;
        var b = Math.random();
        var c = Math.pow(a,3);
        var d = Math.sqrt(a);
        alert(a+"\n"+b+"\n"+c+"\n"+d);//结果:5  0-1随机数  125  2.236067977
    </script>
</body>
</html>

3、位运算符

需要转换成二进制来运算。
& 按位与
| 按位或
~ 按位非
^ 按位异或
<< 左位移运算符
>> 右位移运算符
>>> 无符号右移运算符

4、加强的赋值运算符

+= :对于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;
^=:对于x^=y,对应于x=x^y;
<<=:对于x<<=y,对应于x=x<<y;
>>=:对于x>>=y,对应于x=x>>y;
>>>=:对于x>>>=y,对应于x=x>>>y;

5、比较运算符

> 大于
>= 大于等于
< 小于
<= 小于等于
!= 不等于
== 等于
!== 严格不等于
=== 严格等于
严格等于,严格不等于不支持自动转换,不仅值相等,而且类型相同
普通等于,普通不等于支持自动转换,即只要值相等,即返回true

6、逻辑运算符

&&:与,前后两个操作数都为true,结果才为true
||:或,前后两个操作数有一个为true,结果为true
!:非,操作数为true,返回false,操作数为false,返回true

7、三目运算符

?: 语法格式如下

(expression) ? if-true-statement : if-false-statement; 
5>3?alert('5大于3'):alert('5小于3');

8、逗号运算符

允许多个表达式排在一起,整个表达式返回最右边表达式

//声明变量 a, b, c, d 
var a, b , c , d ; 
//使用逗号运算符为 a 赋值, 最右边的表达式为 56, 因此 a 的值为 56 
a= (b = 5, c = 7, d = 56); 

9、void运算符

用于强行指定表达式不会有返回值

a=void(b=5,c=4,d=122);
//a 的值为 undefined;定义了却没有值

10、typeof和instanceof运算符

typeof可以判断某个变量的数据类型
用法:typeof a;//返回a的数据类型
不同类型返回值如下:

  • undefined 值: undefined。
  • null 值: object。
  • 布尔型值: boolean。
  • 数字型值: number。
  • 字符串值: string。
  • 对象: object。
  • 函数: function。
    instanceof 运算符与typeof类似, 该运算符用于判断某个变量是不是指定类的实例
    用法:a instanceof Object;//判断a是不是Object的实例
   <script>
        //定义一个数组
        var a = [ 4, 5]; 
        //判断 a 变量是否为 Array 的实例 
        alert(a instanceof Array) ; 
        // 判断 a 变拉是否为 Object 的实例 
        alert(a instanceof Object); 
 </script>

因为Object为最大的类,所以JavaScript所有的类都是Object的子类。
执行结果:两个结果都为true
true true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值