Skip to content

Instantly share code, notes, and snippets.

@torbatian
Created January 10, 2018 13:49
Show Gist options
  • Save torbatian/06fa64a978be7d55d51ccc07847a58fb to your computer and use it in GitHub Desktop.
Save torbatian/06fa64a978be7d55d51ccc07847a58fb to your computer and use it in GitHub Desktop.
Ceil10
Math.ceil10 = function (value, exp) {
if (typeof exp === 'undefined' || +exp === 0) {
return Math['ceil'](value)
}
value = +value
exp = +exp
// If the value is not a number or the exp is not an integer...
if (isNaN(value) || !(typeof exp === 'number' && exp % 1 === 0)) {
return NaN
}
// Shift
value = value.toString().split('e')
value = Math['ceil'](+(value[0] + 'e' + (value[1] ? (+value[1] - exp) : -exp)))
// Shift back
value = value.toString().split('e')
return +(value[0] + 'e' + (value[1] ? (+value[1] + exp) : exp))
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment