[英]Currency formatting of JavaScript created numbers
我有一個基本頁面,其中包含用 JS 編寫的類似購物車的系統。
我想將顯示的數字格式化為貨幣,如果可能的話,使用 Intl.NumberFormat 使價格根據用戶區域設置可讀。
對 JS 有非常基礎的了解,我做了各種嘗試都沒有成功,部分代碼如下所示:
$('.price').html(set_price.toFixed(2));
我試圖將上面的代碼修改為:
$('.price').html(Intl.NumberFormat('de-DE').format(parseFloat(set_price.toFixed(2))));
但它不起作用,因為上面代碼產生的數字用於頁面中的其他計算(例如,如果數量改變它會添加/減去數字,導致計算錯誤。)
總數顯示在前端的 div 中,例如:
<div class="price">0</div>
在添加/減去項目時,它會動態更新數字。
有沒有辦法格式化顯示的數字,而不妨礙其計算能力?
您的問題尚不清楚,但是您是否嘗試使用格式化值進行進一步計算? 如果是這樣 - 那么這絕對是一種代碼味道,應該避免。
更好的方法是將實際數字保存在數據 model (內存變量的花哨名稱)中,並僅在演示文稿中顯示格式化數字(實際呈現的 HTML)。 這樣你就永遠不會“阻礙它的計算能力”。
例如
let myValue = x;
let displayValue = Intl.NumberFormat('de-DE').format(parseFloat(myValue.toFixed(2)))
$('.price').html(displayValue);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.