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)。

相关推荐
njsgcs5 分钟前
c# solidworks 工程图获得展开视图不在固定面螺纹特征的位置
开发语言·c#·solidworks
Slice_cy7 分钟前
基于node实现服务端内核引擎
前端·后端
往事随风灬22 分钟前
我被 Volta 的“智能”坑了一下午:pnpm 为何无视项目 Node 版本?
前端·vue.js
qq_85730581923 分钟前
python语法
开发语言·python·算法
xiaofeichaichai26 分钟前
Tree Shaking
前端·javascript
lichenyang45326 分钟前
给 ArkTS 应用做一个内置的「Network 面板」:实时看清 SSE 每一帧和最后那张卡片
前端
倾颜29 分钟前
从手写 Runner 到 LangGraph:受控 Agent 接入 LangGraph
前端·后端·langchain
AI行业学习37 分钟前
CC-Switch v3.16.1 官方下载 | 安装配置详细教程【2026.6.10】
java·开发语言·vue.js·python·mysql·eclipse·html
UXbot37 分钟前
AI网页开发工具能替代工具吗?5大平台对比
前端·人工智能·低代码·ui·原型模式·web app
wuhen_n38 分钟前
从零到一!前端搭建本地轻量化 RAG 问答系统
前端·langchain·ai编程