2011-05-18 79 views
19

在Firefox 4和Chrome 7中實現的JavaScript類型數組是在JavaScript中存儲和處理二進制數據的非常有效的方式。但是,目前的實現只能提供高達32位每個成員的整數視圖,其中Int32ArrayUint32Array。計劃實施64位整數視圖嗎?我如何實現64位整數視圖?他們會變慢多少?JavaScript類型的數組:64位整數?

+0

你可以使用JS BigInt庫,並將它們存儲在數組中? – Simeon 2011-05-18 08:11:14

+2

這對光的使用來說可能很好,但對於類型化數組創建時要解決的問題(即大規模高效的整數/浮點存儲和操作)而言,速度非常慢。 – 2011-05-18 08:13:46

+1

使用Int32Array作爲基礎存儲的特定BigInt庫然後? – Simeon 2011-05-18 08:19:12

回答

15

沒有實用的方法來實現Int64Array,因爲JavaScript中的所有數字都是64位浮點數,它們只有53位精度。就像Simeon在他的評論中所說的那樣,你可以使用一個大的整數庫,但它會慢很多。

如果您確實需要一個64位整數數組,無論性能如何,Google Closure庫都有一個64-bit Long class,我認爲它比一個更一般的大整數庫更快。我從來沒有使用它,我不知道你是否可以輕鬆地將它與圖書館的其他部分分開。

+4

只要把我的0.02美元拋在一箇舊的主題上:I需要一個Flash應用程序中的64位int類我正在寫一段時間回來我基於我的實現關閉「長」類沒有問題 - 沒有外部類依賴 – jordancpaul 2012-01-18 07:34:53

+0

@jordancpaul謝謝,這是很好的知道! – 2012-01-18 14:25:37