Question

Mon objectif est de sérialiser les types de données JavaScript natifs pour les stocker dans une base de données SQLite. Je le fais au sein d'une extension Firefox et j'ai donc accès à l'api XPCOM de la plateforme Mozilla. Au début, je pensais que la meilleure chose à faire serait simplement de stocker des chaînes JSON.

Toutefois, s’il existe un moyen de sérialiser les types de données natifs au sein de la plate-forme Mozilla, j'aimerais savoir où je peux le trouver. Et si cela est possible, quelles économies d’espace de stockage puis-je espérer pour le travail supplémentaire (le cas échéant) et y aurait-il un coût de performances comparé à JSON?

Bien sûr, les gains de stockage de données dans un format binaire peuvent ne pas compenser la facilité d’utilisation de JSON. Des suggestions?

Était-ce utile?

La solution

Firefox 3.5+ prend en charge le codage / décodage JSON natif , ce qui est plus rapide que le moteur Javascript. décodage de JSON, selon Wikipedia .

Etant donné l’implication de la (dé) sérialisation rapide dans FF3.5 +, je dirais que vous pouvez aussi bien vous en tenir aux chaînes JSON. De cette manière, vous pourrez également utiliser plusieurs plates-formes si vous avez besoin d'inspecter la base de données depuis une autre langue / plate-forme.

En ce qui concerne la surcharge de chaîne, si vous supprimez les espaces inutiles, vous vous retrouvez avec une surcharge de quelques accolades, quelques guillemets, quelques virgules / deux points et le coût de stockage d'un nombre sous forme de chaîne. au lieu d'un format natif. À moins que cela ne s'avère être un goulot d'étranglement dans votre application, la simplicité ajoutée d'utiliser de simples chaînes JSON semble en valoir la peine.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top