首页 > 代码库 > localeCompare() 方法实现中文的拼音排序
localeCompare() 方法实现中文的拼音排序
google了很多次才发现在国外网站上有提示如何比较中文,原文地址:http://www.webdeveloper.com/forum/showthread.php?t=9365
前提:使用Unicode 编码,如果其他GBK此方法应该就不行!
定义和用法
用本地特定的顺序来比较两个字符串。
stringObject.localeCompare(target)
target:要以本地特定的顺序与 stringObject 进行比较的字符串
测试1:
var str="北京"; var var2="北京"; var res=str.localeCompare(var2); console.log(res); //输出0
测试2
var str="星期一"; var var2="星期二"; var res=str.localeCompare(var2); console.log(res); //输出1
测试3
var str="星期三"; var var2="星期一"; var res=str.localeCompare(var2); alert(res); //输出-1
测试4
<html> <head> <title>JavaScript String localeCompare() Method</title> </head> <body> <script type="text/javascript"> var str1 = new String( "This is beautiful string" ); var index = str1.localeCompare( "XYZ" ); document.write("localeCompare first :" + index ); document.write("<br />" ); var index = str1.localeCompare( "AbCD ?" ); document.write("localeCompare second :" + index ); </script> <!--结果:localeCompare first :-1 localeCompare second :1 --> </body> </html>
实现中文的拼音排序:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>JavaScript对文字按照拼音排序</title> </head> <body> <SCRIPT type="text/javascript"> function defaultSort(){ var a="博,啊,吃,世,中,超"; a=a.split(","); a.sort(); alert(a); } function cusSort(){ var a="博,啊,吃,世,中,超"; a=a.split(","); a.sort(function(a,b){ return a.localeCompare(b); }); alert(a); } </SCRIPT> <a href="http://www.mamicode.com/#" onClick="defaultSort();">默认排序</a><br> <a href="http://www.mamicode.com/#" onClick="cusSort();">按拼音字母排序</a> </body> </html>
localeCompare() 方法实现中文的拼音排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。