javascript - string.length 是否在调用 string.length 时计算长度

标签 javascript string time-complexity

最近我发现javascript中string.length的时间复杂度是0(1)。有没有人可以让我理解为什么要获得长度我们需要遍历所有字符,如果字符串有 n 个字符,那么它应该取决于 n 并且应该花费 0(n)。

如果有人可以清除此问题或可以发送 string.length 的 native 实现的链接,我将非常感激

提前致谢:-)

最佳答案

这是因为字符串是不可变的,所以长度是在创建字符串时计算的,并且永远不会改变。

当修改字符串时,将创建一个新的字符串对象以及长度。

所以长度是常数时间O(1)

关于javascript - string.length 是否在调用 string.length 时计算长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63971910/

相关文章:

javascript - 带有固定标题的巨大 HTML 表格,标题单元格和行单元格之间对齐

javascript - 按特定 div 内的类隐藏引导元素

javascript - Google Tag Manager noscript 标签显示为字符串,为什么? (使用 react-gtm-module)

javascript - 从用户输入中获取 JS 对象数据

c++ - 从字符串中删除行注释

ios - 如何在 Swift 中有效地将 Range Int 数组转换为 String 数组?

java - 如何有效使用ListIterator?

algorithm - 确定多个函数调用的运行时间

c++ - 这个for循环的时间复杂度是多少(和 `n`有关)?

python - Python有计算空间复杂度的方法吗?