Truncate a number at decimal
Drop the fractional part toward zero.
function truncate(n) { return Math.trunc(n); }
Input & expected output
Input
12.75Expected output
12The edge case
Input
-12.75Expected output
-12Know the limits
- The original ~~n only works within 32 bits: ~~3000000000 is -1294967296. Math.trunc works for every number.
The function above is the implementation used by the lab. The lab validates JSON types and caps size before execution; include equivalent validation when accepting untrusted input in your application.
Source & maintenance
Based on Truncate a number at decimal from the original 1loc collection by Nguyen Huu Phuoc, with onelifemedia. Copyright (c) 2020 phuoc-ng. MIT licensed.
Uses Math.trunc; the original ~~n wrapped numbers beyond 32 bits. Original MDX retained as inert source evidence.
Maintained by Oveyon. Source commit: 14b481cf60df. Read the license.
Keep exploring
- Clamp a number to a range — Keep a number inside an inclusive minimum and maximum.
- Round to a number of digits — Apply decimal scaling and JavaScript rounding for display-oriented values.
- Add an ordinal suffix to a number — Append st, nd, rd or th to a positive integer.