2016-05-04 8 views
2

は:Float32Array演算はdoubleに変換されますか?私はこのJavaScriptコードをお持ちの場合

var a = new Float32Array(4); 
var b = new Float32Array(4); 
var r = new Float32Array(4); 

//fill here "a" and "b" with random numbers 

r[0] = a[0] + b[0]; 
r[1] = a[1] - b[1]; 
r[2] = a[2] * b[2]; 
r[3] = a[3]/b[3]; 

は、これらの山車は、操作を行う前にdoubleに変換されていますか?
浮動小数点数は、これらの2つの言語で同じ値を維持するC++とjavascriptコード(no sqrt()、sin()、tan()...など)で同じfloat32演算を実行するとしますか?

+0

@RaymondChen明らかに。私のコメントを削除する。ありがとう。 –

答えて

2

JavaScript演算演算子(+-*/)は、常に64ビットの倍精度で処理されます。型付き配列は記憶域の解釈に関するものです。型付き配列から値を取得すると、それはプレーンなJavaScript番号になります。

数字の値がの場合、が整数として扱われますが、数値は64​​ビットの倍数になる場合があります。

関連する問題