函数比较(x,y){ 对于(var i=0;i<数学最小值(x.length,y.length)); i++){ var xc=x[i]; var yc=y[i]; 如果(xc==yc) 继续; var xclow=x.toLowerCase(); var yclow=y.到LowerCase(); if(xclow==cyclow) 返回xc<yc- 1 : 1 其他的 返回xclow<cyclow- 1 : 1; }
-
压缩? 比较? – 贝吉 评论 2016年7月26日14:40 -
1 你在做什么 小写 如果你想这样 敏感的 ? – 贝吉 评论 2016年7月26日14:40 -
当然是比较,抱歉拼写错误 – 唱针 评论 2016年7月26日14:41 -
" 返回x.length.localeCompare(y.length); “是死代码。删除它。 – 贝吉 评论 2016年7月26日14:41 -
@Bergi你说得对,会的 – 唱针 评论 2016年7月26日14:43
3个答案
函数比较(x,y){ 对于(var i=0;i<数学最小值(x.length,y.length)); i++){ var xc=x[i]; var yc=y[i]; 如果(xc==yc) 继续; var xclow=xc.toLowerCase(); var cyclow=yc.toLowerCase(); 如果(xclow==ycow) 返回xc<yc- 1 : 1 其他的 返回xclow<cyclow- 1 : 1; 返回x.length.localeCompare(y.length); } }
有更简单的方法可以做到这一点,但我认为你正试图靠自己来实现这一点。
console.log('a'.localeCompare('a',{敏感度:'variant'}));