这两个类中哪一个需要更多内存?为什么?

时间:2014-03-24 21:10:15

标签: javascript

这两个类中哪一个需要更多内存?为什么?

function ClassA() {
    var inc = 1;
    this.method = function (b) {
        return b + inc;
    }
}

function ClassB() {
    var inc = 1;
    this.method = function (b) {
        return b + 1;
    }
}

2 个答案:

答案 0 :(得分:4)

这是不可能的,这取决于您使用的JavaScript环境以及许多其他因素。

例如,在V8中,第一个需要创建一个闭包并需要更多内存,但明天或下个月可能会有所改变。在其他引擎中也可能有很大不同。

值得一提,请不要进行过早优化。在大多数情况下,它是万恶之源。这样的优化是有利的,但是通常会有很多较低的结果果实才能获得优势。

答案 1 :(得分:0)

答案必须围绕第一次使用inc和第二次使用1以及相应所需字节数的差异。