【发布时间】:2020-06-01 21:33:11
【问题描述】:
我需要剥离 JWT 令牌的一部分,我很想知道哪个更快,或者内部不太复杂。
示例输入字符串:
const input = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOjMsInR5cGUiOjAsImlhdCI6MTU4MTk3NDk1MCwiZXhwIjoxNTgxOTc4NTUwfQ.oEwxI51kVjB6jJUY2N5Ct6-hO0GUCUonolPbryUo-lI"
其中哪一种方法更快?
const output = input.split('.').slice(2,3).join('.');
const output = input.replace("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.","");
const output = //REGEX replace
我没有找到有关这些方法速度的任何信息,而且我并不完全擅长进行测试:D
【问题讨论】:
-
这可能是一次不要为它的工程性能而烦恼的事情
-
这很大程度上取决于你运行代码的环境吧。答案肯定是没关系。尤其是如果你只运行一次,差异将是微乎其微的。
-
在前两个选项中,第一个快了几毫秒。 jsben.ch/UqLeb 在不知道第三个选项中的正则表达式替换代码的情况下,我无法对其进行测试。正如其他人所说,您很可能不必担心这一点,因为差异非常小。
-
示例方法产生的结果不同。
标签: javascript performance strip code-complexity