請大神指教一下!
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Array對象 </title>
<script type="text/javascript">
? ?function sortNum(a,b) {
return a-b
? ?}
var myarr = new Array("80","16","80","6","100","1");
document.write(myarr.sort(sortNum));
</script>
</head>
<body>
</body>
</html>
我想問一下如果不指定方法函數(shù),就按unicode碼排序,這個unicode碼是什么?
還有在document.write(myarr.sort(sortNum));這里面調(diào)用sortNum函數(shù)為什么不用寫成”sortNum()“呢
還有就是當我們需要升序排列的時候,它說當返回值為>-1&&<1的時候表示A和B具有相同的排列順序,這是我們假設(shè)A=0.9,B=0.6,當它比較a-b的時候返回值就是0.3符合>-1&&<1,這時A是和B排在一起,就是0.9排在0.6之前對嗎?
2015-12-15
計算機只能存儲2進制數(shù)據(jù)。所以你寫的這些字符串,計算機會編碼成二進制的,編碼的時候就按照unicode碼來編。
舉2個例子,比如字母A,它的編碼是65,
? ? ? ? ? ? ? ? ? ? ?字母B,它的編碼是66,
如果按照unicode升序排列的話,顯然65<66,所以字母A排在字母B前面。
在比如,漢字 中,它的編碼是20013
? ? ? ? ? ? 漢字 國,它的編碼是22269
如果按照unicode降序排列的話,顯然22269 > 20013,所以 國 將會排在 中 前面