javascript 舍去小数(截断小数)取整方法

TypeScript 复制代码
console.log(-5.9 >> 0)
console.log(5.9 >>> 0)
console.log(Math.trunc(-5.9))
console.log(Math.floor(-5.9))

-5
5
-5
-6

>> 是有符号右移运算符,-5.9 >> 0 就相当于 -5.9 / 2的0次幂(1)取整,这个取整会直接截断小数。正数负数运行方法不一样。仅适用于32位整数范围内的数值。

>>> 是无符号右移运算符,和 >> 一样,只是在计算正数的时候用。注意:console.log(6 >>> 1) 方式多被用于二分法中,表示 6 / 2 取整的意思。

Math.trunc()‌:ES6引入,直接截断数字的小数部分,返回整数部分,其行为与 >> 对于正数和负数的处理方式一致,但语义更明确,且不受32位整数限制。

‌Math.floor()‌:返回小于或等于给定数字的最大整数,对于负数会向更小的方向取整(例如 Math.floor(-5.9) 结果为 -6),而 >> 会直接截断小数(-5.9 >> 0 结果为 -5)。

相关推荐
砍材农夫2 分钟前
物联网 基于netty构建mqtt协议规范(主题通配符订阅)
java·前端·javascript·物联网·netty
彩票管理中心秘书长6 分钟前
智能体状态指示:何时思考、何时调用工具、何时出错
前端·后端·程序员
广州华水科技9 分钟前
单北斗GNSS变形监测在基础设施安全中的应用与维护
前端
码途漫谈11 分钟前
把前端组件做成一座小岛:Animal-Island-UI 的自然风 React 组件库拆解
前端·开源
_日拱一卒12 分钟前
LeetCode:114二叉树展开为链表
java·开发语言·算法
天天进步201515 分钟前
从零打造 Python 全栈项目:智能教学辅助系统
开发语言·人工智能·python
星栈17 分钟前
Rust 全栈项目里,我写了一个不再重复造轮子的泛型表格组件
前端·前端框架·开源
008爬虫实战录18 分钟前
【码上爬】 题九:webpack调试 堆栈分析
前端·webpack·node.js
爱滑雪的码农18 分钟前
React Native 完整开发全流程(从零到上线)
javascript·react native·react.js
HwJack2023 分钟前
HarmonyOS APP开发中ArkTS/JS 类型错误全景拆解
javascript·华为·harmonyos