JavaScript中JSON.parse()的复杂性是什么?

the*_*tor 7 javascript json time-complexity

标题说明了一切.我将要解析一个非常大的JSON字符串,并且好奇这个内置方法的复杂性.

我希望它是θ(n),其中n是字符串中的字符数,因为它可以确定是否存在语法错误.

我试过搜索,但无法想出任何东西.

c-s*_*ile 6

JSON是非常简单的语法,甚至不需要前瞻.一旦GC不涉及那么它就是纯粹的O(n).

  • N是这里的一些字符 (3认同)
  • 更正,JSON是LL(1)可解析的,需要单个令牌前瞻.但这确实意味着解析器对于每个字符的下一步都是"确定性的",并且不需要反向跟踪,因此可以一次解析一个字符(和一个预测),因此O(n)到字母数. (2认同)