Как рассчитать размер сжатого объекта? - PullRequest
0 голосов
/ 11 февраля 2019

Как рассчитать фактический размер объекта или сжатого объекта (в байтах) в javascript, а не на основе длины символов в объекте?

Я пробовал object-size из библиотеки npm, но он возвращаетразмер основан на длине символов. В приведенном ниже коде jsonCompressCheck - это большой объект Json, который мне нужно сжать, и я хочу получить размеры, чтобы я знал, насколько он эффективен

console.log("Actual Object Size: "+sizeof($scope.jsonCompressCheck));
var zlib = require('zlib');
var sizeof = require('object-sizeof');
  zlib.deflate(JSON.stringify($scope.jsonCompressCheck),function(err, buffer) {
            if (!err) {
              console.log("USing Deflate Size of: ");
              console.log("Byte Length: "+Buffer.byteLength(buffer));
              console.log(sizeof(buffer));
             $scope.compressed = buffer;
            }
          });
     zlib.gzip(JSON.stringify($scope.jsonCompressCheck),function(err, buffer) {
            if (!err) {
              console.log("USing gzip: ");
              console.log("Byte Length: "+Buffer.byteLength(buffer));
              console.log(sizeof(buffer));
             $scope.compressed = buffer;
            }
          });   
...