位置: 编程技术 - 正文

详解js运算符单竖杠“|”与“||”的用法和作用介绍(js的运算符)

编辑:rootadmin

推荐整理分享详解js运算符单竖杠“|”与“||”的用法和作用介绍(js的运算符),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js ??运算符,js中的运算符号,js %运算符,js?运算符,js中的运算符号,js常用运算符有哪五大类,js 运算符,js中运算符可分为,内容如对您有帮助,希望把文章链接给更多的朋友!

在js开发应用中我们通常会碰到“|”与“||”了,那么在运算中“|”与“||”是什么意思呢?

在js整数操作的时候,相当于去除小数点,parseInt。在正数的时候相当于Math.floor(),负数的时候相当于Math.ceil() 注:

1. Math.ceil()用作向上取整。2. Math.floor()用作向下取整。3. Math.round() 我们数学中常用到的四舍五入取整。

单竖杠的运算规则

看了上面的例子,大体知道单竖杠可以进行取整运算,就是只保留正数部分,小数部分通过拿掉,但是“|0”,又是如何进行运算的呢,为什么能“|0”能达到取整的目的呢?单竖杠不是0有会是多少呢?

带着这些问题,我们看下面例子:

这里面提到了单竖杠“|”但是没有javascript的。

好吧,我在这里公布答案吧。其实单竖杠“|”就是转换为2进制之后相加得到的结果。例如我们拿简单的举例:

3|4

转换为二进制之后| 相加得到=7

4|4

转换为二进制之后 | 相加得到=4

详解js运算符单竖杠“|”与“||”的用法和作用介绍(js的运算符)

8|3

转换为二进制之后 | 相加得到=

以此类推,我在这里就不一一列举了,单竖杠“|”运算就是转换为2进制之后相加得到的结果!

JS 双竖线运算符

1、JS双竖线运算符:是或比较.如null||'1',返回'1';'2'||'1',返回'2'.即或运算符中,第一个为真,后面的就不用计算了.所以得'2'。

2、js 中 使用双竖线运算符"||",返回第一个有效值

总结

性能上的比较

逻辑运算符&& || 中,如果&&的第一个运算数是false,就不再考虑第二个运算数,直接返回false;如果||的第一个运算数是true,也不再考虑第二个运算数,直接返回true。而&和|运算符却不是这样的,它们总是要比较两个运算数才得出结果,因而性能上&&和||会比&和|好。

功能用法

&&和||只能进行逻辑运算,而&和|除了可以进行"逻辑运算"外,还可以进行位运算

位运算

&和|本是位运算符,之所以可以进行"逻辑运算",是由于JS是无类型的语言、各数据类型可以自由转换这一特性决定的,当用&和|进行"逻辑运算"时,实际上true被转换成1,false被转换成0,再进行逐位运算:

上面这句,实例等同于逻辑运算被转化成下面的位运算,并执行:

也正是由于&和|是逐位运算符,才出现了第一点中所说的,它们总是要比较两个运算数才得出结果,才导致性能会比&&和||低一些。

标签: js的运算符

本文链接地址:https://www.jiuchutong.com/biancheng/376019.html 转载请保留说明!

上一篇:RGB和YUV 多媒体编程基础详细介绍(rgb与yuv哪个好)

下一篇:Javascript 普通函数和构造函数的区别(javascript中的函数该如何理解)

  • 产权转让印花税计税依据
  • 减免所得税会影响工资发放吗
  • 应交个人所得税计提分录
  • 其他应付款二级科目明细
  • 餐费补贴要交个人所得税吗
  • 个人独资企业是什么单位性质
  • 进货没有开具发票能退吗
  • 事业单位库存物品
  • 计提工资和应付职工薪酬怎么不一样
  • 进项税认证怎么做分录
  • 收到高新企业补助款分录
  • 处置全资子公司税务处理
  • 专票的税金
  • 超过五千
  • 润滑油经销需要什么资质
  • 一般纳税人开具3%专票的条件
  • 过路过桥费抵扣2021新规定
  • 土地转让收入怎么交所得税?
  • 机票报销发票抬头要开公司的吗
  • 个人税务代人开普票
  • 分工分类法
  • 税金及附加期末结转分录
  • 代订住宿费属于那个经营范围
  • 车辆保险费计入车辆的入账成本吗
  • 在建工程变更建设单位
  • win11无限重启怎么解决
  • qbupdate.exe - qbupdate是什么进程 有什么作用
  • 软件产品登记证书官费
  • 好的投资理财项目
  • uniapp中的onload
  • PHP:pg_lo_import()的用法_PostgreSQL函数
  • 其他应收款年末余额较大
  • ChatGLM-6B (介绍相关概念、基础环境搭建及部署)
  • iframe内嵌页面
  • unity常用脚本语言
  • 人工智能大模型上市公司
  • 单目测距精度
  • 前端工程化解决方案
  • mysql的字符串
  • 税务局返还手续费
  • 支付工程款的会计科目怎么写
  • 门诊收费票据能重新打印吗
  • 什么企业符合高新技术企业
  • 用友t3怎么结转本年利润
  • 分页存储过程是什么
  • 实物投资入股
  • 取得税务师证书申请社保补贴
  • 购置环保设备一次性扣除
  • 外币支付账户
  • 进项税额大于销项税额期末留抵
  • 租入的厂房
  • 去年多计提的费用
  • 多交增值税不能抵扣
  • 成本含税如何做会计分录
  • 明细账的登记方向与总账的登记方向是一致的
  • mysql 5.7.18 winx64 免安装 配置方法
  • centos的命令
  • qbupdate.exe - qbupdate是什么进程 有什么作用
  • 845主板支持1t硬盘吗
  • find按照文件大小查找
  • 如何用mac制作ppt
  • win7调整视觉效果
  • ext.grid.panel
  • unable to instantiate default
  • 怎样关闭android系统的内存不足的系统通知
  • opengl perspective
  • linux生成文件
  • 如何解决eclipse非正常关闭重打开编译代码
  • 异步任务管理器
  • 常见的shell脚本
  • shell脚本监听端口
  • jquery 打印方法
  • python的cumprod
  • android应用层是什么
  • python字典常用操作
  • python网络编程从入门到精通
  • 电子税务局如何下载财务报表
  • 哈尔滨二手房交易流程
  • 江苏电子税务局app下载
  • 福建地税网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设