存储数据的最有效方法

时间:2018-09-06 05:32:51

标签: javascript memory optimization

假设我们需要存储一些数据,那么从速度内存效率的角度来看,最好的存储方式是什么?

1:作为两个不同的变量

var a = 1;
var b = 2;

2:作为数组

var arr = [1, 2];

3:作为对象

var obj = {
  a: 1,
  b: 2
};

1 个答案:

答案 0 :(得分:1)

真的,这取决于您要执行的操作...速度和效率更多地是关于如何操作数据而不是数据的存储方式。

不过,我个人希望单个变量最快和最小。

一项快速测试(使用Node.js和process.memoryUsage())表明情况确实如此:

vars.js:已使用的1080个字节

var start = process.memoryUsage().heapUsed;

( function() {
        var a = 1;
        var b = 2;

        console.log( process.memoryUsage().heapUsed - start );
} )();

array.js:已使用1224个字节

var start = process.memoryUsage().heapUsed;

( function() {
        var a = [ 1, 2 ];

        console.log( process.memoryUsage().heapUsed - start );
} )();

object.js:已使用1856个字节

var start = process.memoryUsage().heapUsed;

( function() {
        var a = { a: 1, b: 2 };

        console.log( process.memoryUsage().heapUsed - start );
} )();

注意-这不是不是,这意味着仅声明两个变量需要1080个字节!您还从声明和运行匿名函数中获得了所有开销-这只是一个相对的度量。我以这种方式编写脚本,以便在进行第一次测量之前不会分配变量。