To pytanie jest prawdopodobnie "nietypowe", ale muszę rzucić liczbę zmiennoprzecinkową Number
na liczbę całkowitą Number
, bez modyfikowania jej reprezentacji binarnej.Nowa interpretacja rzutowania liczby zmiennopozycyjnej na liczbę całkowitą
Na przykład float 37.5
jest reprezentowany przez bajty 0x42160000
(zgodnie z IEEE 754). Muszę ponownie interpretować 0x42160000
jako liczbę całkowitą, tj. Numer 1108738048
Jak to zrobić? Sądzę, że może to być trochę sztuczek, aby to osiągnąć?
Dla jasności, jestem nie poszukuję Math.round
lub parseInt
.
Awesome. Czy jest to obsługiwane przez wszystkie główne przeglądarki? Nigdy nie słyszałem o Float32Array lub Int32Array ... – Bart
@Bart: Tak naprawdę nie sądzę - jest zupełnie nowy. Działa w Chrome - pozwól mi przetestować dla innych przeglądarek. – pimvdb
@Bart: Obsługa w przeglądarce Firefox (przynajmniej Firefox 6), Chrome i Safari. Nie w IE ani w Operze, obawiam się ... – pimvdb