lua 计算字符串长度为什么推荐用#而不推荐用string.len()

再看书,看到说计算字符串长度的时候推荐使用#,而不推荐string.len(),这是为什么呢,上网找了好久也没找到资料。要去看源码吗?

阅读 10k
1 个回答

因为string.len()需要先查找string再找其下的len,再传参再调用,至少需要4条 lua vm bytecode;而#直接被翻译为LEN指令,一条指令就可以算出来。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进