asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0
第一种感觉简单点,不过原理都一样,先把中文转换成十六进制,然后用sort排序就行了
一。

<script type="text/vbscript">
function transform(str)
  transform
=hex(asc(str))
end 
function
</script>
<script type="text/Jscript">
var arr=["","","","","","饿","a","b","c","d"];
var t=[];
for(var i=0;i<arr.length;i++{
  t[i]
=transform(arr[i])+"&"+arr[i];
  }

document.write(t.sort().join().replace(
/[A-F0-9]+&/g,""))
</script>
二 创建一个字典对象,然后把中文对应的十六进制设置为key,中文设置为item,然后对key所在的数组排序,然后根据key读出依次的item来
  <script type="text/vbscript">
function transform(str)
  transform
=hex(asc(str))
end 
function
</script>
<script type="text/jscript">
var t=[];
var arr=["","","","","","饿","a","b","c","d"];
for(var i=0;i<arr.length;i++{
 t[i]
=transform(arr[i]);
 }

var dit=new ActiveXObject("Scripting.Dictionary");
for(i=0;i<arr.length;i++{
dit.Add(t[i],arr[i]);
}

t
=t.sort();
for(var i=0;i<arr.length;i++{
document.write(dit.Item(t[i])
+"<br>");
 }

</script>
三 创建一个对象,原来上面的字典对象差不多,不过一般还是用这种方法多一点
  <script type="text/vbscript">
function transform(str)
  transform
=hex(asc(str))
end 
function
</script>
<script type="text/jscript">
var t=[];
var obj=new Object();
var arr=["","","","","","饿","a","b","c","d"];
for(var i=0;i<arr.length;i++{
 t[i]
=transform(arr[i]);
 obj[t[i]]
=arr[i];
 }

t
=t.sort();
for(var i=0;i<arr.length;i++{
 document.write(obj[t[i]]
+"<br>");
 }

</script>
posted on 2006-07-15 13:56 汪杰 阅读(656) 评论(1)  编辑 收藏 引用

FeedBack:
# re: 关于中英文按拼音排序
2008-07-27 22:55 | dottob
<script type="text/vbscript">
function transform(str)
transform=hex(asc(str))
end function
</script>

请问博主,象上述代码的值,完全用jscript处理的代码去获取的话,应该怎么写呢?  回复  更多评论
  
只有注册用户登录后才能发表评论。

<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(15)

随笔分类(1)

随笔档案(90)

文章分类(727)

文章档案(712)

相册

收藏夹

http://blog.csdn.net/prodigynonsense

友情链接

最新随笔

搜索

  •  

积分与排名

  • 积分 - 466814
  • 排名 - 6

最新随笔

最新评论

阅读排行榜

评论排行榜