亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Vue 計算屬性計算結果出現規律性異常

Vue 計算屬性計算結果出現規律性異常

守候你守候我 2019-03-21 18:19:57
問題描述電商項目,前端框架使用vue,顯示購物車內價格時使用vue的計算屬性,用來計算購物車的總價格.但當商品價格為1.01元時,計算結果會出現周期性的位數異常.相關代碼goodsInform 存儲用戶存在購物車中商品的信息price 商品單價amount 購物車中同種商品的數量totalPrices () {      let totalPrices = 0      for (let index in this.goodsInform) {        console.log(this.goodsInform[index].price) // 商品的單價        console.log(this.goodsInform[index].amount) // 商品的數量        totalPrices += this.goodsInform[index].price * this.goodsInform[index].amount        // 強制限制保留位數為兩位,這是我對該問題的解決辦法,但想知道問題原因      }      totalPrices = totalPrices.toFixed(2)      if (totalPrices <= 0) {        return '未選購商品'      } else {        return '總價:' + '¥' + totalPrices      }    }相關錯誤結果截圖和數據信息1.商品數據是Java后臺傳遞的,后端說他使用BigDecima類型數據,傳過來我這邊存儲的均是Number類型的單價和數量.2.出現錯誤的規律:分別在1.01元的商品數量為3,6,12,24...(后面沒繼續測試但好像規律已經出現了)會顯示成6.0600000000000005這種類似的數據.控制臺打印結果與顯示結果:雖然目前我所使用的解決辦法不影響顯示,但這個問題的出現讓我很費解,想知道為什么會出現這種情況,可以通過什么方式避免這種錯誤的發生.
查看完整描述

1 回答

?
白板的微信

TA貢獻1883條經驗 獲得超3個贊

這是js的一個老bug,在小數位的計算上。小數計算精準度丟失


查看完整回答
反對 回復 2019-04-14
  • 1 回答
  • 0 關注
  • 300 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號