我有一个简单的问题。我想写一个字符串比较器函数,它会返回一个数字来指示第一个字符串是小于、等于还是大于第二个。
显然最简单的解决方案是:
function compare (x, y){
return x < y ? -1 : (x === y ? 0 : 1);
}
但是,这不是一个非常有效的方法,因为字符串可能会被比较两次。另一方面,实现一个典型的教科书解决方案(迭代两个字符串并比较各个位置的字符)可能会更加低效,因为 Javascript 没有单个字符的概念 - 而是有 1 个字符串。
那么,是否有使用一些内置 Javascript 功能(也许是 ES5?)来有效实现此类功能的技巧,或者我们是否坚持上述代码?