前端优雅(装逼)写法(updating····)

1.>>右位移运算符取整数

它将一个数字的二进制位向右移动指定的位数,并在左侧填充符号位(即负数用1填充,正数用0填充)。

比如 2.99934 >> 0:取整结果是2,此处取整并非四舍五入

  • 2.99934 会先被转换为整数 2(因为右位移操作只处理整数部分)。
  • 然后,2 的二进制表示是 10
  • >> 0 表示右移 0 位,因此结果仍然是 2

2.使用按位或操作符实现四舍五入取整

正常我们实现四舍五入取整都是使用Math.round方法,但是如果出现比较多的需要取整的地方看起来就不够优雅,这时候我们就可以使用按或位操作符

按位或(| :可以简单地将浮点数转换为整数(向下取整),例如 4.6 | 0 结果为 4

此时我们可以巧妙的在前面加上0.5来实现四舍五入取整,如果一个小数部分大于等于0.5加上0.5必定整数位会进1,那么向下取整刚好就是五入的结果,相反小数位小于0.5加完0.5整数位则不会进1向下取整刚好是四舍的结果

比如2.3333 + 0.5 | 0结果就是2,2.5333 + 0.5 | 0结果就是3

3.console.table(data)

此方法可以在控制台以表格的形式输出对象或者数组以便于更直观的查看数据结构

相关推荐
txinyu的博客10 分钟前
解析业务层的key冲突问题
开发语言·c++·分布式
明天好,会的11 分钟前
分形生成实验(五):人机协同破局--30万token揭示Actix-web状态管理的微妙边界
运维·服务器·前端
码不停蹄Zzz16 分钟前
C语言第1章
c语言·开发语言
C_心欲无痕42 分钟前
nginx - alias 和 root 的区别详解
运维·前端·nginx
行者961 小时前
Flutter跨平台开发在OpenHarmony上的评分组件实现与优化
开发语言·flutter·harmonyos·鸿蒙
阿蒙Amon1 小时前
C#每日面试题-Array和ArrayList的区别
java·开发语言·c#
SmartRadio1 小时前
ESP32添加修改蓝牙名称和获取蓝牙连接状态的AT命令-完整UART BLE服务功能后的完整`main.c`代码
c语言·开发语言·c++·esp32·ble
且去填词2 小时前
Go 语言的“反叛”——为什么少即是多?
开发语言·后端·面试·go
知乎的哥廷根数学学派2 小时前
基于生成对抗U-Net混合架构的隧道衬砌缺陷地质雷达数据智能反演与成像方法(以模拟信号为例,Pytorch)
开发语言·人工智能·pytorch·python·深度学习·机器学习