js数组有最大长度吗?

最近在某个前端交流群中有人提出一个问题,js数组中有最大长度吗?它的最大长度是多少?

array的最大长度为Math.pow(2,32)-1,2的32次方-1.
这是 是网上主流的说法,我决定手动测试一下,单纯的循环肯定是不现实的,我决定直接定义数组的length的长度来进行测试。
在这里插入图片描述
很明显,这个数组并没有超过最大长度,所以length能正常输出。

而当我们把这个值变成Math.pow(2.32)的时候

在这里插入图片描述
输出的是无效的数组长度,由此可知,js数组最大长度确实是2的32次方-1;

根据ECMA-262第5版规范,数组的最大长度由一个无符号32位整数绑定,原因是ToUint 32抽象操作,因此最长的数组可以有2。32-1=4 294 967 295=42.9亿元素。

记录一件有意思的事

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值