取模运算(%):返回两个数相除后的余数,它的结果符号与被除数(左边的数)一致
a % ba: 被除数 b: 除数
console.log(7 % 3) // 1,因为 7 除以 3 的余数是 1console.log(-7 % 3) // -1,因为 -7 除以 3 的余数是 -1console.log(7 % -3) // 1,因为 7 除以 -3 的余数是 1console.log(-7 % -3) // -1,因为 -7 除以 -3 的余数是 -1
除法运算符:计算两个数的商
a / ba: 被除数 b: 除数
console.log(10 / 2) // 5,10 除以 2 的商是 5console.log(7 / 3) // 2.333...,7 除以 3 的商是 2.333...console.log(-10 / 2) // -5,-10 除以 2 的商是 -5console.log(10 / -2) // -5,10 除以 -2 的商是 -5
/ 与 % 结合使用 将秒数转换为分钟 秒
let totalSeconds = 125let m = Math.floor(totalSeconds / 60) // 分钟let s = totalSeconds % 60 // 剩余秒数console.log(`${m}分${s}秒`) // 2 分 5 秒
Math.floor() :JavaScript 中的一个内置函数,用于将一个数字向下取整,返回小于或等于该数字的最大整数。它常用于处理浮点数,将其转换为整数。
console.log(Math.floor(3.7)) // 3console.log(Math.floor(5.1)) // 5console.log(Math.floor(10)) // 10console.log(Math.floor(-3.7)) // -4console.log(Math.floor(-5.1)) // -6console.log(Math.floor(-10)) // -10// 如果参数是 NaN,Math.floor 返回 NaN//如果参数是 Infinity 或 -Infinity,Math.floor 返回 Infinity 或 -Infinityconsole.log(Math.floor(NaN)) // NaNconsole.log(Math.floor(Infinity)) // Infinityconsole.log(Math.floor(-Infinity)) // -Infinity
Math.ceil(): 用于向上取整,返回大于或等于给定数字的最小整数
console.log(Math.ceil(3.1)) // 4
console.log(Math.ceil(5.9)) // 6
console.log(Math.ceil(-3.1)) // -3(向上取整,-3 大于 -3.1)
console.log(Math.ceil(-5.9)) // -5
Math.round(): 用于四舍五入,返回最接近给定数字的整数
console.log(Math.round(3.1)) // 3
console.log(Math.round(5.9)) // 6
console.log(Math.round(-3.1)) // -3
console.log(Math.round(-5.9)) // -6//当数字正好在两个整数中间时,Math.round 会向正无穷方向取整
console.log(Math.round(3.5)) // 4
console.log(Math.round(-3.5)) // -3
Math.trunc(): 用于直接截断小数部分,返回数字的整数部分
console.log(Math.trunc(3.1)) // 3
console.log(Math.trunc(5.9)) // 5
console.log(Math.trunc(-3.1)) // -3
console.log(Math.trunc(-5.9)) // -5