const myValue = 1000;
return myValue * 1005 / 1000;
// ну или
return myValue + myValue * 5 / 1000; const changeValue = 50; // вот тут ваши полпроцента
const factor = 10000; // а это ваш порог чувствительности, допустимая погрешность. Чем выше - тем меньше погрешность.
return currentValue + currentValue * changeValue / factor;const changeValue = 5000; // вот тут ваши полпроцента
const factor = 1000000; // а это ваш порог чувствительности, допустимая погрешность. Чем выше - тем меньше погрешность.
return currentValue + currentValue * changeValue / factor; var x = 1;
while(true) {
x += 0.005;
}var x = 1000;
while(true) {
x += 5;
}currentValue * x / 1000;
// вместо простого
currentValue * x;// вместо такого
1280 * (100008 / 100000)
// использовать это
1280 * 1.00008 let [integerPart, fractionalPart] = '100.05'.match(/[0-9]+/g); // [ '100', '05']
result = Number(integerPart) * 1000 + Number(fractionalPart);Убивать производительность регуляркой я точно не хочу.
var re = /[0-9]+/g;
console.time('regexp');
for (var x = 0; x < 10000; x++) {
'100.04'.match(re)
'100.05'.match(re)
'100.06'.match(re)
'100.07'.match(re)
'100.08'.match(re)
'200.04'.match(re)
'200.05'.match(re)
'200.06'.match(re)
'200.07'.match(re)
'200.08'.match(re)
}
console.timeEnd('regexp');'50.0123'.split('.')