JavaScript学习(二)运算符

本文全面介绍了JavaScript中的各类运算符,包括算数运算符、赋值运算符、比较运算符、字符串运算符、条件运算符、逻辑运算符及位运算符等,并通过实例详细解释了它们的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 算数运算符

在这里插入图片描述

算术运算符用于执行两个变量或值的运算

  • 加法 +
    	//示例加法,先创建变量
    	var y = 5;
     	var x = y + 2;		
     	//x = 7;
    
  • 减法 -
    	var y = 5;
    	var x = y - 2;
    	//x = 3		
    
  • 乘法 *
    	var y = 5;
    	var x = y * 2;	
    	//x = 10		
    
  • 除法 /
    	var y = 5
    	var x = y / 2
    	//x = 2.5			
    
  • 余数 %
    	var y = 5;
    	var x = y % 2;		
    	//x = 1
    
  • 自增 ++

    这里注意 ++ 在前数据直接递增++在后 数据下次调用递增

    	var y = 6;
    	var x = ++y	;	
    	//x = 7
    	y = 6;
    	x = y++	;
    	//x = 5
    
  • 自减 --

    这里注意和++ 的用法一样。-- 在前数据直接递减--在后 数据下次调用递减

    	var y = 4;
    	var x = --y	;	
    	//x = 4
    	y = 4;
    	x = y--	;
    	//x = 5	
    
二、赋值运算符

在这里插入图片描述

赋值运算符用于给 JavaScript 变量赋值

  • 用法如实例展示,每个要联系几个数字才有更深的理解
  • = 等于
	var x = 5;
	var y = x ;	
	console.log(y)// y = 5
  • += 加等于
	var x = 15;
	var y =1
	x += y;	//其实就是这个写法  x = x + y	
	console.log(x) //x = 16
  • -= 减等于
	var x = 15;
	var y =5
	x -= y;	//其实就是这个写法  x = x - y	
	console.log(x) //x = 10
  • *= 乘等于
	var x = 10;
	var y =5
	x *= y;	//其实就是这个写法  x = x * y	
	console.log(x) //x = 50
  • /= 除等于
	var x = 10;
	var y =5
	x /= y;	//其实就是这个写法  x = x / y	
	console.log(x) //x = 2
  • %= 余等于
	var x = 9;
	var y =5
	x %= y;	//其实就是这个写法  x = x % y	
	console.log(x) //x = 4
三、比较运算符

在这里插入图片描述

比较运算符用于逻辑语句的判断,从而确定给定的两个值或变量是否相等,返回结果是truefalse

  • == 等等 ; 比较数据数值 。比较数据类型
	var x=3;
	console.log(x==3);//true
	console.log(x==4);//false 
  • === 恒等;比较数据数值 。比较数据类型
	var x='3';
	console.log(x==3);//true
	console.log(x===3);//false 数据类型不符
  • != 不等于; 比较数据数值 。比较数据类型
	var x=3;
	console.log(x!=4);//true
	console.log(x!=3);//false 
  • !== 恒不等于; 比较数据数值 。比较数据类型
	var x='3';
	console.log(x!=3);//false
	console.log(x!==3);//true 数据类型不对 所以不等于
  • > 大于; 比较数据数值 。比较数据类型
  • < 小于; 比较数据数值 。比较数据类型
	//数据类型一致
	var x=3;
	var y=4
	console.log(x>y);//false
	console.log(x<y);//true 
	//数据类型不一致,还是一样的结果
    var x='3';
    var y=4
    console.log(x>y);//false
    console.log(x<y);//true 
  • >= 大于等于;比较数据数值 。比较数据类型
  • <= 小于等于;比较数据数值 。比较数据类型
//数据类型一致
	var x=3;
	var y=3
	console.log(x>=y);//true
	console.log(x<=y);//true 
	//数据类型不一致,还是一样的结果
    var x='3';
    var y=3
    console.log(x>=y);//true
    console.log(x<=y);//true 
四、字符串运算符(连接符)

字符串运算符用于连接字符串
全部是数字的运算就是算数运算符。有字符串运算就是连接符

  • + 运算符
  • += 运算符
	//文字字符串
	var x = '这是我的';
	var y = '后半部分';
	var z = x + y;
	console.log(z);// 输出 : '这是我的后半部分' 
	//全是数字字符串
	var x = '3';
    var y = '4';
    var z = '5';
    var h = x + y + z;
    console.log(z);// 输出 : '345'
    //有数字 有字符串数字
    var x = '3';
    var y = '4';
    var z = 5;
    var h = x + y + z;
    console.log(h);// 输出 : '345'
    //全是数字
    var x = 3;
    var y = 4;
    var z = 5;
    var h = x + y + z;
    console.log(h);// 输出 : 12
    
    // += 其他用法和 + 类似
    var x = '这是我的';
	var y = '后半部分';
    var x += y;  //简写的 :x = x + y ;
    console.log(x) //输出:'这是我的后半部分' 
五、条件运算符(三目运算符)

在这里插入图片描述

条件 ? 符合条件执行 : 不符合条件执行 ;

  • 示例操作
	var x = 3;
	var z = x > 5 ? '这个数大于5': '这个数不大' 
	console.log(z) //输出 : '这个数不大' 
六、逻辑运算符

在这里插入图片描述

  • && 和(并且) 必须都满足返回结果 true
	//两者都满足
	var x = 3;
	var y = 4;
	console.log (x < 10 && y > 1) // true
	//有一个不满足,如果两个都不满足一样都是false
	var x = 3;
	var y = 4;
	console.log (x < 10 && y < 1) // false
  • ||一个满足返回结果 true
	//有一个满足,不管几个满足 , 只要有一个满足就是true
	var x = 3;
	var y = 4;
	console.log (x < 10 || y < 1) // true
  • ! 非 (取反)
	var x = 3;
	var y = 4;
	console.log (!(x < 10 && y > 1)) // 不取反true,取反后false
七、位运算符

位运算符工作于32位(二进制位数)的数字上。任何数字操作都将转换为32位。结果会转换为 JavaScript 数字

  • & AND (并且)

位运算 AND 由和号(&)表示,直接对数字的二进制形式进行运算。它把每个数字中的数位对齐,然后用下面的规则对同一位置上的两个数位进行 AND 运算
00000000000000000000000000008421 :依次上推每一位都是下位乘2 。一共32位数字

	//00000000000000000000000000000101 :5
	//00000000000000000000000000000001 :1
	//转换为32位运算 //  0101 & 0001
	var	x = 5 & 1;
	console.log(x)//共同位数 0001 转换成10进制为 1
  • | OR (或者)

位运算 OR 由符号(|)表示,也是直接对数字的二进制形式进行运算。在计算每位时,OR 运算符采用下列规则

	//转换为32位运算 0101 | 0010
	var x = 5 | 2;
	//0101 | 0010	0111	
	console.log(x);  //合并两个数据结果输出 7
	//如果两个数有相同的位数则取其中一个就可以
	var x = 5 | 1;
	//0101 | 0001	0101	
	console.log(x);  //0101 输出 5
  • ^ 位运算 XOR (异或)

位运算 XOR 由符号(^)表示,当然,也是直接对二进制形式进行运算。XOR 不同于 OR,当只有一个数位存放的是 1 时,它才返回 1。

	//转换为32位运算 0101 | 0010
	var x = 5 ^ 2;
	//0101 | 0010	0111	
	console.log(x);  //输出 7
	//如果两个数有相同的位数则为0
	var x = 5 ^ 1;
	//0101 | 0001	0100	
	console.log(x);  //0100 输出 4
  • << 左移运算 32位为一个循环

左移运算由两个小于号表示(<<)。它把数字中的所有数位向左移动指定的数量。例如,把数字 2(等于二进制中的 10)左移 5 位,结果为 64(等于二进制中的 1000000)

注意:左移运算保留数字的符号位。例如,如果把 -2 左移 5 位,得到的是 -64,而不是 64。“符号仍然存储在第 32 位中吗?”是的,不过这在 ECMAScript 后台进行,开发者不能直接访问第 32 个数位。即使输出二进制字符串形式的负数,显示的也是负号形式(例如,-2 将显示 -10。)

	//转换为32位运算 0101 左移两位
	var x = 5 << 2;
	//0101 		
	console.log(x);  // 010100  输出 20
	//转换为32位运算 0101 左移1位
	var x = 5 << 1;
	//0101 
	console.log(x);  //	01010	 输出 10
  • >>有符号右移运算 32位为一个循环

有符号右移运算符由两个大于号表示(>>)。它把 32 位数字中的所有数位整体右移,同时保留该数的符号(正号或负号)。有符号右移运算符恰好与左移运算相反。例如,把 64 右移 5 位,将变为 2

	var x = 64;		//等于二进制 1000000
	var z = x >> 5;	
	console.log(z); //输出  2
	//负数
	var x = -64;		//等于二进制 -1000000
	var z = x >> 5;	
	console.log(z); //输出  -2
  • >>> 无符号右移运算 32位为一个循环
    无符号右移运算符由三个大于号(>>>)表示,它将无符号 32 位数的所有数位整体右移。对于正数,无符号右移运算的结果与有符号右移运算一样。
	//负数
	var x = -64;		//等于二进制 -1000000
	var z = x >>> 5;
	console.log(z); //输出  134217726
	//正数
	var x = 64;		//等于二进制 -1000000
    var z = x >>> 5;
    console.log(z); //输出  2
	
  • ~ 取反
	var temp = ~5;
    /*
    5 二进制 101,补满 32位
    00000000000000000000000000000101
    按位取反
    11111111111111111111111111111010
    由于32位开头第一个是1,所以这是一个负数,将二进制转换成负数,需要先反码
    00000000000000000000000000000101
    之后,再+1
    00000000000000000000000000000110
    转换成十进制为6,加上符号变成负数 -6
    */
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值