在JavaScript中比较字符串的最佳方法?
作者:互联网
参见英文答案 > Is there a JavaScript strcmp()? 5个
我正在尝试优化一个在JavaScript中对字符串进行二进制搜索的函数.
二进制搜索要求您知道密钥是否= = pivot或<枢轴. 但这需要在JavaScript中进行两次字符串比较,这与C语言类似,后者的strcmp()函数返回三个值(-1,0,1)(小于,等于,大于). JavaScript中是否存在这样的本机函数,它可以返回三元值,以便在二进制搜索的每次迭代中只需要进行一次比较?
解决方法:
您可以使用localeCompare()方法.
string_a.localeCompare(string_b);
/* Expected Returns:
0: exact match
-1: string_a < string_b
1: string_a > string_b
*/
进一步阅读:
> MDN: String.prototype.localeCompare
> Stack Overflow – Is there a JavaScript strcmp()?
> Tutorials Point: JavaScript String – localeCompare() Method
标签:javascript,string,optimization,binary-search,comparison 来源: https://codeday.me/bug/20190915/1806112.html