这两者有什么区别?
所以我知道数组。size()是数组时的函数。长度是一个属性。是否有一个使用一个而不是另一个的用例?一个更有效吗?(我认为.length
要快得多,因为它是一个属性,而不是一个方法调用?)为什么会使用较慢的选项?是否有一些浏览器与其中一个不兼容?
var x = [];
console.log(x.size());
console.log(x.length);
console.log(x.size()==x.length);
x =[1,2,3];
console.log(x.size());
console.log(x.length);
console.log(x.size()==x.length);
将打印:
0, 0, true
3, 3, true
. size()
函数在Jquery和许多其他库中可用。
<代码>。仅当索引为整数时,length属性才起作用。
“长度”(length)属性将用于此类型的数组:
var nums = new Array();
nums[0] = 1;
nums[1] = 2;
print(nums.length); // displays 2
“长度”(length)属性不适用于此类型的数组:
var pbook = new Array();
pbook["David"] = 1;
pbook["Jennifer"] = 2;
print(pbook.length); // displays 0
所以在你的情况下,你应该使用。长度属性。
始终使用长度属性
有一个库或脚本将size方法添加到数组原型中,因为这不是本机数组方法。这通常是为了添加对自定义getter的支持。使用此方法的一个示例是,当您想要获取数组内存中的大小时(这是我能想到的唯一一件对这个名称有用的事情)。
不幸的是,nderscore.js定义了一个size
方法,该方法实际上返回对象或数组的长度。由于不幸的是函数的长度属性被定义为函数声明的命名参数的数量,因此它们必须使用替代方案并选择大小(count将是更好的选择)。
获取数组,对象或字符串的大小。 Get type of val (array, object or string). Use length property for arrays. Use length or size value if available or number of keys for objects. Use size of a Blob object created from v
我在WebSphere管理控制台中:Application servers>as-name>Process definition>Java Virtual Machine。 有一个字段“最大堆大小”。 指定最大堆的两个选项有什么区别?
我的Android应用程序中有一个ArrayList,其中有两个项目。然而,它的size方法返回3。我知道这听起来很简单也很愚蠢,但事情是这样的: 为什么会发生这种情况?ArrayList的大小如何返回不正确的数字?当我迭代列表时,这会导致空指针异常。
我在[17,98,89,42,67,54,89,25,38]中有一个数字列表,从左到右插入到一个空堆中。生成的堆是什么?
我是Java的初学者,刚开始使用Intellij作为我的IDE。 当我使用它时,有时会延迟。 我更改了我的 xms 和 xmx 以获得更大的堆大小(xms = 1024,xmx = 2048),但它抛出了一个错误。 所以,我把它回滚了。 错误消息是这样的:“初始堆大小设置为大于最大堆大小的值”。 有什么问题? 如果可能,如何增加最大堆大小? 我用的是笔记本电脑,它有8GB内存。x64Intelli
我明白了在递归中,每个递归调用是如何堆栈在堆栈上的;如果超过堆栈限制,则会出现堆栈溢出。那么为什么Python的返回一个数字;递归调用的最大深度? 这不是取决于我在递归函数中做了什么吗?还是以某种方式将变量保存在堆栈以外的其他地方?它是如何工作的?