财产比方法快? 需要它的理由

当我谷歌这个问题,所以一个人给出答案,属性比方法更快,并给出一个size()length例子。

他说长度比尺寸快,因为长度是属性。 你能告诉我它是否正确? 或者如果你举例,那对我来说会很棒。

size内部调用长度

 //http://code.jquery.com/jquery-latest.js // The number of elements contained in the matched element set size: function() { return this.length; }, 

因此,如果您使用长度,那么您将避免一个额外的方法调用。 Jquery文档说:

.size()方法在function上等同于.length属性; 但是, .length属性是首选属性,因为它没有函数调用的开销。

我假设你想获得一个String的长度或一个数组中的元素数量。

size()不是Array或String对象的方法。 因此,如果它存在某个库,或者您自己已将此方法添加到相应的原型中。 另一方面, length是一个默认属性,并且(应该)存在于任何JS运行时中。

除非你不能使用长度,否则size函数只会添加不必要的开销,我会选择该属性。

请查看以下链接: https : //developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Array/prototype https://developer.mozilla.org/en-US/docs/Web/JavaScript /参考/ Global_Objects /字符串/原型

如果您将读取length属性,则只需要访问对象属性所需的时间。

但是,如果您将调用size()那么首先将调用一个函数,此函数将在内部读取length属性,然后将该值返回给调用者。

你可以清楚地看到你在两种情况下都做同样的事情。 但是如果你调用该函数,那么它将包括调用函数的时间+返回该值。

根据jQuery文档,Length返回相同的内容并稍微快一些。

资料来源: http : //api.jquery.com/size/