慕勒3428872
2022-05-26 10:40:09
我需要選擇所有類并像貨幣一樣顯示它們。它還需要像函數一樣顯示。每次我添加一些數據時都需要更新。我嘗試了很多東西,沒有任何幫助。我現在需要用每個. 我得到一個錯誤toFixed is not a function$('.dashboard__currency').each(function(){ return $(this).text().toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');});
1 回答

慕碼人8056858
TA貢獻1803條經驗 獲得超6個贊
這里有兩個問題。首先,您得到的錯誤是因為text()返回一個字符串,但toFixed()它是一個數字類型的方法。第二個問題是語句中的 areturn不會each()更新元素的內容。
要解決此問題,您可以使用parseFloat()將字符串轉換為數字,還可以提供一個函數text(),然后返回新值。這消除了顯式each()調用的需要。試試這個:
$('.dashboard__currency').text((i, t) => parseFloat(t).toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<span class="dashboard__currency">10205.99</span><br />
<span class="dashboard__currency">15232323.00</span><br />
<span class="dashboard__currency">193235</span>
添加回答
舉報
0/150
提交
取消