gpt4 book ai didi

javascript - 哪个是确保拆分后最终得到大于 1 的数组的正确方法?

转载 作者:行者123 更新时间:2023-12-01 16:48:26 25 4
gpt4 key购买 nike

我目前正在做一个大项目(大我的意思是,很多过程),我节省的每一毫秒都意义重大(从长远来看),所以我想确保我以正确的方式做这件事。

那么,确保数组大于 1 的最佳方法是什么?

  • a) 使用indexOf(),然后如果结果不同于-1,则split()
  • b) 拆分(不管字符是否存在),然后仅当array.length 大于 1
  • c) 上面没有列出的另一个

最佳答案

使用 jsPerf , 似乎省略 .indexOf() 比包含它超过 500,000 次迭代的效率大约高 23%(11.67 vs. 8.95 操作/秒):

没有indexOf():

var str = "test";
for (var i = 0; i < 500000; i++) {
var test = str.split('.');
}

使用 .indexOf():

var str = "test";
for (var i = 0; i < 500000; i++) {
if (str.indexOf('.')) {
var test = str.split('.');
} else {
var test = str;
}
}

http://jsperf.com/split-and-split-indexof

编辑

嗯...如果下面一行是:

if (str.indexOf('.') > -1)

http://jsperf.com/split-and-split-indexof-with-indexof-check

或任何其他比较,它似乎要快很多(大约 69%)。

我认为会出现这种情况的唯一原因是,在每个变量上运行 .split() 会对每个值执行两个函数(查找,然后分离),而不是在必要时只执行一个.请注意,这最后一部分只是一个猜测。

关于javascript - 哪个是确保拆分后最终得到大于 1 的数组的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7863057/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com