运算符(~ & | ^ << >> ++ -- && || )运算顺序以及原理
1. ~ [截断小数,然后取反减1:机理是二进制]
example:~5 : -6 ; ~-5 : 4 ; ~4.2 : -5;
~~表示2次操作,等于parseInt()
2. & [表示按位与:机理是二进制 都是1才1]
example:5 & 8: (0101)& (1000)===> 0;
5 & 6: (0101) & (0110)===> (0100) = 4;
3. | [机理是二进制 有1就1]
example:5 | 8: (0101)| (1000)===> (1101) = 13;
5 | 6: (0101) | (0110)===> (0111) = 7;
4. ^ [机理是二进制 不同值是1相同值是0]
example:5 ^ 8: (0101)^ (1000)===> (1101) = 13;
5 ^ 6: (0101) ^ (0110)===> (0011) = 3;
5. << [表示向左移位]
example:5 << 2: (0101)左移动2位(10100)===> 20;
5 >> 2: (0101) 右移动2位(0001)===> 1;
6. ++ 和 -- [a++表示先用在+,++a表示先+再用]
7.&& 和 || [短路语法]
a && b ===> a真则b, a假则a
a || b ===> a真则a, a假则b
8.运算顺序 [置反 --- 数学 --- 比较 --- 逻辑(非、与、或)]
example:true && 8 > 5 % 3
= true && 8 > 2
= true && true
= true
数学运算的隐式转换:undefined是NaN,null是0,字符串就是这个字符串数字,true是1,false是0。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本