2013-04-15 76 views
-3
var ratings = 3193; 
var reviews = 9; 

var average = parseFloat(ratings)/reviews; //I want a floating point number at the end. 

這是正確的做法嗎?我如何得到2個整數的浮點數?

+1

難道你不能簡單地嘗試一下嗎? – j08691

+0

我試過了,但沒有成功 – TIMEX

回答

1

轉換不是必需的。 JavaScript會自動在類型之間轉換。數字實際上並不是在內部表示爲整數。無論如何,它們都是浮點。

所以,最簡單的解決方案應該有預期的效果:

var ratings = 3193; 
var reviews = 9; 
var average = ratings/reviews; 

你必須在你的榜樣是什麼原因導致發動機ratings轉換爲字符串和解析字符串作爲雙(理論上導致價值它必須先開始),然後將其視爲您計算中的分子。

+0

但是,[位運算符](https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/Bitwise_Operators)在內部將它們的操作數轉換爲帶符號的32位整數。所以,'(評分/評論)| 123 == 354.77 | 123 == 354 | 123'。 – svidgen

2

JavaScript中的所有數字都是雙精度64位二進制格式IEEE 754.不需要像C/C++和其他語言那樣將「整數」轉換爲「浮點數」類型。只有在處理字符串時,您才需要parse*

參見:

相關問題