Как предотвратить 'E' при отображении двойного числа в JSP? - PullRequest
0 голосов
/ 05 июля 2018

Я показываю число (типа double в Java) в HTML. И он автоматически конвертирует его в E.

<td>${obj.val}</td>

когда я смотрю на значение в серверной части / отладчике, оно равно 13857542.994060002, но оно показывает то же значение в следующем формате.

1.3857542994060002E7

Мне было интересно, есть ли способ отформатировать его.

Ответы [ 2 ]

0 голосов
/ 05 июля 2018

Включить формат JSTL

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

<fmt:formatNumber type="number" value="${obj.val}" />

Вы также можете контролировать количество десятичных знаков с атрибутом

maxFractionDigits
0 голосов
/ 05 июля 2018

Если вы собираетесь отображать фиксированное количество десятичных знаков, вы можете использовать toFixed. Например, это выводит число с двумя десятичными разрядами:

13857542.994060002.toFixed(2); // outputs 13857542.99

Если вы собираетесь отформатировать числа для представления локали, вы можете использовать toLocaleString:

13857542.994060002.toLocaleString('en-US'); // outputs 13,857,542.994
...