Ver código fonte

Add small number word mode - only goes up to septillion

tags/v0.0.7
Fen Dweller 5 anos atrás
pai
commit
599e085c1c
Nenhuma chave conhecida encontrada para esta assinatura no banco de dados ID da chave GPG: E80B35A6F11C3656
2 arquivos alterados com 25 adições e 0 exclusões
  1. +5
    -0
      gorge.js
  2. +20
    -0
      numbers.js

+ 5
- 0
gorge.js Ver arquivo

@@ -29,6 +29,11 @@ const numberModes = {
words: {
name: "Words",
render: numberText,
next: "smallWords"
},
smallWords: {
name: "Small Words",
render: numberTextSmall,
next: "scientific"
},
scientific: {


+ 20
- 0
numbers.js Ver arquivo

@@ -2,6 +2,26 @@ function render(val, places = 1, smallPlaces = 0) {
return numberMode.render(val, places, smallPlaces);
}

function numberTextSmall(val, places = 1, smallPlaces = 0) {
if (isNaN(val)) {
throw new RangeError("Invalid number: " + val);
}
if (val < 1000) {
return round(val, smallPlaces);
}

let power = Math.floor(Math.log10(val));

let order = Math.floor(power / 3);

adjusted = round(val / Math.pow(1000, order), places).toFixed(places);

if (order <= 8)
return adjusted + " " + _numberWords[order - 1];
else
return numberTextSmall(val / Math.pow(10, 24), places, smallPlaces) + " septillion"
}

function numberText(val, places = 1, smallPlaces = 0) {
if (isNaN(val)) {
throw new RangeError("Invalid number: " + val);


Carregando…
Cancelar
Salvar