2013-03-06 9 views
8

Çok büyük (> 1MB) bit maskesini bellekte bir dize olarak saklıyorum ve JS'nin dizeleri dahili olarak nasıl depoladığını merak ediyorum. Bütün dizeleri unicode olduğunu, aslında oJS dizeleri saklamak için karakter başına her zaman iki bayt kullanır mı?

String.fromCharCode(65535).charCodeAt(0) === 65535 

dayalı his var, ama emin değilim. Temelde, bellek kullanımı açısından, 8 bitlik karakterlere göre 16 bit karakterlere karşı bit maskesinin daha verimli olup olmayacağını bulmaya çalışıyorum.

+1

olası yinelemesi [ECMAScript/JavaScript dizgisinde her karakter ne kadar RAM kullanır?] (Http://stackoverflow.com/questions/7217015/how-much-ram-does-each-character-in-ecmascript- javascript-string-tüketmek) – jAndy

cevap

0

kontrol dışarı bu tartışma kullanmaktır. Bazı JavaScript motorları UTF16 DEĞİLDİR bir 16 bit kodlama kullanın sırf Kısacası

JavaScript strings - UTF-16 vs UCS-2?

. Edge case vekil çiftleri ikisi arasında farklı olarak MUCH olarak ele alınır.

İlgili konular