Обрезать число после второго знака после запятой

100
23 апреля 2021, 19:40

Нужно обрезать число поле второго знака после запятой, но в зависимосити от локали разделитель может быть разный.

10.8976 -> 10.89
10,8976 -> 10,89

Метод toFixed() именно округляет а мне нужно отрезать

Как это сделать попроще и покороче без сторонних библиотек?

Answer 1
var x = 10.8976456874;
console.log( Math.trunc( x * 100 ) / 100 );
Answer 2

Ну в JS у чисел нет "запятой", только точка. Поэтому:

var x = 10.8976456874; 
 
console.log( Math.floor( x * 100 ) / 100 );

Math.floor() округляет до нижнего целого числа.

А если в тексте встречаются такие числа, и запятые тоже надо учитывать, тогда придется через регулярные выражения:

var x = "Число: 10.8976456874, Второе: 58974,1547, Третье: 10.1"; 
 
x = x.replace(/(\d+)(\.|,)(\d+)/g, function(o, a, b, c){ 
  // Где o = всё совпадение целиком, a, b и с = совпадения из 1-й, 2-й и 3-й скобок. 
  // символ \d находит совпадение с любой цифрой. Плюсик после него означает "один или несколько" 
  return a + b + c.slice(0,2); 
}); 
 
console.log( x );

READ ALSO
AJAX при коде ответа 200 (ок) заходит в error, а не в success

AJAX при коде ответа 200 (ок) заходит в error, а не в success

При этом, вот что выводится в консоли

86
Lazy load в элементе Tree фреймворка ExtJs 4.1.1

Lazy load в элементе Tree фреймворка ExtJs 4.1.1

Я изучаю ExtJs в связке с DjangoНедавно реализовал построение элемента tree из файла json, содержащего данные из базы данных sqlite3

99
Проблема с setInterval и animation

Проблема с setInterval и animation

Необходимо, чтобы синий(С) квадратик перемещался за зеленым(З) по оси ХНо если во время движения С квдарата переместить З квадрат, начинается...

102
Как в AJAX сделать GET запрос, чтобы url не менялся [закрыт]

Как в AJAX сделать GET запрос, чтобы url не менялся [закрыт]

Хотите улучшить этот вопрос? Добавьте больше подробностей и уточните проблему, отредактировав это сообщение

114