位置: 编程技术 - 正文

详解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中的函数该如何理解)

  • 金税盘开票软件服务电话
  • 全国税务师考试准考证打印
  • 资产总额增长幅度怎么算
  • 去参加博览会的英文
  • 财务章备案和不备份区别
  • 个人所得税怎么交
  • 固定资产盘点账务处理
  • 暂估入库可以跨年吗
  • 加盖发票专用章的是
  • 向境外支付特许权使用费免征增值税
  • 上月暂估计提的费用次月来发票怎么写会计分录?
  • 不动产折旧费计算公式
  • 冲减以前年度多计的管理费用分录
  • 蓝字发票未入账收到红字发票处理?
  • 营改增怎么抵扣
  • 对公账户提取备用金可以每天提现嘛
  • 四点帮你避开虚开发票
  • 服务费与劳务费税率的区别
  • 用人单位垫付生育津贴的凭证怎么做
  • 收到政府拨款怎么做账
  • 以前年度损益调整属于哪类科目
  • 科技型企业科研项目申报
  • 发票认证的三种方式
  • 如何使用ping命令诊断网络故障
  • 公司个人股份转让需要缴税吗
  • 销售货物结转成本会计分录
  • 会计实务加班费的账务处理
  • 认知度高的人
  • 企业之间拆借资金
  • 小企业会计准则和一般企业会计准则的区别
  • 删除数组中某个值的数
  • 餐饮专用发票可抵扣吗
  • 增值税电子普通发票怎么打印
  • js实现功能
  • vue之间的组件通信
  • php密码加密技术phpass
  • php支付宝现实支付要收费吗
  • 房地产企业建筑成本
  • 开具劳务发票需要提供什么资料?
  • 滴滴打车的发票是什么样子
  • 帝国cms如何判断图片有没有被使用
  • 自定义函数是啥
  • 现金流量表的编制公式 计算公式
  • 发票第一联需要盖发票专用章吗
  • SQLSERVER2008中CTE的Split与CLR的性能比较
  • 公司收到社保局的提醒函怎么办
  • 本期盈余转入累计盈余
  • 建筑服务包括哪些内容
  • 销售中介费一般收多少
  • 如果不签合同会怎么样
  • 跨月的普通发票能作废吗
  • 财付通支付的优缺点
  • 出口收汇核销单是什么意思
  • 留底税额怎么形成的
  • 公司购买一辆小型货车
  • 发票缴销后还要保存吗
  • 影响营业利润和利润总额的因素
  • 合资公司政策
  • 员工团体意外保险受益人是谁
  • 暂估成本的两种形式
  • 房屋销售预收如何交税
  • 建造固定资产的账务处理(出包方式)
  • 个体工商户个人经营所得税税率表
  • sql2000删除
  • ubuntu下的代码编辑器
  • win10鼠标指针在文本区很小
  • windowsxp自带播放器
  • 苹果电脑打不开txt
  • win8屏幕键盘快捷键
  • vue动态引入模块
  • python ftps
  • unity find references in scene
  • mkdirs linux
  • 在bash shell环境下
  • unity3d CarWaypoints插件
  • 以下代码的运行结果是哪一项
  • jquery查找当前元素的父元素
  • 基于bootstrap的网站
  • 地税局 要官
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设