位置: 编程技术 - 正文

详解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%的发票吗
  • 借方是收入还是支出 正负号
  • 资信证明好开吗
  • 城市维护建设税怎么做分录
  • 增值税加计扣除账务处理
  • 清算备付金的会计科目
  • 增值税10%怎么算
  • 报销单和付款单的区别
  • 工程结算审核程序
  • 老板垫付员工工资怎么写条子
  • 库存商品低价销售违法吗
  • 金税盘是固定资产还是无形资产
  • 一般纳税人附加税减免
  • 长期应付款账面价值和账面余额
  • 周转天数是越大越好吗
  • 补提以前年度税费应该计入
  • 收到运费怎么做账
  • 收入可以用收据入账吗
  • 发票查出来显示不一致是为啥
  • excel合并的单元格怎么填充序列
  • linux清理磁盘空间
  • 结算起点为
  • 支付工程款需要什么财务手续
  • 路由器wds桥接成功为什么不能上网
  • php常用设计模式(大总结)
  • the模板引擎
  • 前端后端选择
  • VUE -- defineExpose
  • 通讯费补贴如何入账
  • 委托加工物资实际成本构成一般包括
  • 营业外收入合理避税
  • 包装物应交消费税
  • elementui表格自定义排序
  • 新闻管理系统类图
  • JavaScript DOM API的使用
  • audit install success
  • 发票错开退税款什么时候退回
  • 流动资产的含义及常见项目
  • 逾期超过一年
  • 员工餐费补助交个人所得税吗
  • 小规模纳税人免税政策2023年
  • 客户给的现金如何转到公司账上
  • 物业公司代收代缴水电费
  • 政府会计制度累计盈余为负数
  • 客户以个人名义打对公户现在要求开专票可以吗
  • 筹建期业务招待费的扣除标准
  • mysql建索引有哪些策略和原则
  • mysql启动成功但是无法连接
  • sql语句重复
  • win8.1开机密码忘了
  • windows需要更新吗?
  • pd虚拟机安装安卓系统
  • 外接法实物图
  • bios如何进去
  • windows.exe
  • win8固态硬盘
  • win8桌面右键无法使用
  • win系统文件在哪里
  • macos创建文件夹
  • linux unhide
  • WIN10系统中断
  • android应用程序的主要语言是java
  • 你不一定知道的地方
  • python等于和双等于
  • JavaScript运算符中谁拥有最高优先级
  • jquery点击事件写法
  • linux开机启动进程
  • shell脚本运行linux命令
  • 深入浅出python
  • python序列结构总结
  • python制作爬虫教程
  • javascript简明教程
  • javascript快速入门
  • jquery获取点击元素
  • Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
  • 一般纳税人企业所得税怎么算
  • 重庆购房退契税
  • 为什么每个月总有几天
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设