2015-05-06 2 views
14

тесты: http://jsfiddle.net/su918rLv/Есть ли формат для numeral.js, который будет показывать десятичные знаки только тогда, когда это необходимо?

Это как существующие форматы работы:

numeral(1234.567).format('0,0'); 
//output: 1,235 

numeral(1234.567).format('0,0.00'); 
//output: 1,234.57  

numeral(1234).format('0,0.00'); 
//output: 1,234.00 

Есть ли формат, который будет производить как целое число или десятичное число в зависимости от значения числа? Я использую 0,0.99 здесь, но это не ответ.

numeral(1234).format('0,0.99'); 
//output: 1,234 

numeral(1234.567).format('0,0.99'); 
//output: 1,234.57 

ответ

21

Да. Поставьте дополнительные десятичные знаки в скобки:

numeral(1234).format('0,0.[00]'); 
// output: 1,234 

numeral(1234.567).format('0,0.[00]'); 
// output: 1,234.57 
+1

Спасибо! Он также работает в [numbro.js] (http://numbrojs.com/format.html): 'numbro (1234) .format ('0,0. [00]')' и 'numbro (1234.456) .format ('0,0. [00]') ' – Homer

+0

У меня есть связанный вопрос, но я не могу найти ответ. Что делать, если я хочу показать все десятичные знаки в такте, основанном на значении? Например, я хочу показать 1234 и 1234,56 и 1,234,567 соответственно, так как это – Bruce

+1

@bruce: поместите столько дополнительных мест, сколько вам нужно. Например. '0,0. [000000]' будет форматировать числа с точностью до 6 знаков после запятой, если число имеет это много или больше. –

Смежные вопросы