Подтвердить что ты не робот

Разделим десятичные точки из переменной

ok Я знаю, что это, наверное, очень просто, но я барахтаюсь. У меня есть ряд переменных, которые имеют десятичную точку и несколько нулей. Как убрать переменную так, чтобы она начиналась с 1.000 до 1? Не думайте, что это важно, но числа генерируются из файла xml, который я захватываю с помощью jquery, например...

var quantity = $("QTY",this).text();

Заранее благодарим за помощь!

4b9b3361

Ответ 1

Просто...

Math.round(quantity);

... если вы хотите округлить 1.7 до 2. Если нет, используйте Math.floor для 1.7 до 1.

Ответ 2

использовать parseInt();

parseInt("1.25");//returns 1
parseInt("1.85");//returns 1
parseInt(1.25);//returns 1
parseInt(1.85);//returns 1

Ответ 3

Используйте number = ~~number

Это самая быстрая замена Math.floor()

Ответ 4

parseInt - самый медленный метод math.floor является вторым самым медленным методом.

более быстрые методы, не перечисленные здесь:

var myInt = 1.85 | 0; myInt = 1;

var myInt = 1.85 → 0; myInt = 1;

Тесты скорости, выполненные здесь: http://jsperf.com/math-floor-vs-math-round-vs-parseint/2

Ответ 5

использовать Math.trunc() он делает именно то, что вы просите. Он разделяет десятичное число

Ответ 6

Для этого вам не нужен jQuery.

Вы можете использовать parseInt просто отлично. На странице:

document.write(parseInt("10.33") + "<br />"); // 10

Ответ 7

Для округления чисел до ближайшего Integer вы можете использовать Math.round() следующим образом:

Math.round("1.000"); // Will produce 1
Math.round(123.4234); // Will produce 123

Ответ 8

Вот еще один хороший пример:

Я часто использую Math.round и toLocateString для преобразования чисел, содержащих десятичные знаки, в более читаемую строку с тысячами разделителей:

var myNumberAsString = "1234567.890123"              //  "1234567.890123"
var myNumber = Math.round(0.0 + myNumberAsString);   //  1234568
return myNumber.toLocaleString();                    //  "1,234,568"

Я считаю это полезным при загрузке десятичных значений, например, в веб-службу JSON, и их нужно отображать в более дружественном формате на веб-странице (когда, конечно, мне не нужно отображать все десятичные знаки).

Ответ 9

Более быстрый и эффективный способ - использовать битовые операторы JavaScript bitwise operators, например:

function stripDecimals(n) {
     return n | 0;
}

// examples:
stripDecimals(23.245); // => 23
stripDecimals(100.015020); // => 100

| (оператор OR) будет обрабатывать числа как 32-битные (двоичные 0s и 1s), после чего будет возвращаться нужный результат в зависимости от операндов, которые в этом регистр приведет к целому числу, удаленному из всех десятичных разрядов.

Ответ 10

Я предлагаю вам использовать что-то под названием Math.trunc()... укажите свой номер в скобках. Причина, по которой я не предлагаю вам использовать Math.round(), заключается в том, что он может изменить целую часть вашего десятичного числа, чего не захотят некоторые люди, хотя вы можете использовать Math.round(), если знаете, что хотите получить ближайшее целое число.