Добавление запятых к значениям цикла Django for loop
Я пытаюсь написать javascript для разделения запятыми трехзначных числовых значений, которые передаются через мою базу данных django, и не могу разобраться. Exp: (1000 -> 1,000). Прежде чем писать JS, я также пытаюсь понять, если я отделяю эти значения запятой, не испортит ли это потенциальное использование в других JS-кодах, которые используют эти числа для математических вычислений? Спасибо.
<table class="database-table">
<thead>
<tr>
<th>Market Value</th>
</tr>
</thead>
<tbody>
<tr>
{% for s in securities %}
<tr>
<td id="security-value">${{s.market_value_of_security}}</td>
</tr>
{% endfor %}
</tr>
</tbody>
</table>
<script>
const security_value = document.getElementById("security-value");
function numberWithCommas(x) {
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
}
В шаблонах django вы можете использовать тег intcomma
templatetag для добавления тысячи запятых:
${{ s.market_value_of_security|intcomma }}
Тогда в javascript вы можете сначала использовать replace
для удаления пробелов, запятых и $ из строки, а затем преобразовать строку чисел в фактическое число с помощью parseFloat
:
.
number = parseFloat(numberText.replace(/[ ,$]/g, ""))