JavaScript中字符串的最大长度是多少?

时间:2019-05-27 03:05:56

标签: javascript string memory

我认为这将是一个简单的Google搜索,但没有任何结果。

假设我创建了一个循环,一次将一个字符连续追加到变量中。

程序什么时候崩溃?

我希望有人发表评论“为什么不尝试并找出答案?”会花费6秒钟,但是尝试不会告诉我问题的答案。它是特定于实现的吗?它在任何地方定义吗?它似乎不在ECMAScript规范中。

除了可用内存之外,是否还有其他已知限制?包含Mb或Gbs文本的字符串的性能会降低吗?

为记录起见,我没有尝试运行该循环...。它只是使我的浏览器崩溃了:(也许如果我做了一些调整然后再试一次。

1 个答案:

答案 0 :(得分:3)

  

ECMAScript 2016(第7版)确定了最大长度为2^53 - 1   元素。以前,没有指定最大长度。在Firefox中,   字符串的最大长度为2**30 - 2〜1GB )。   在先前版本中   Firefox 65,最大长度为2**28- 1(〜256MB)。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/length