請(qǐng)大神指教一下!
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Array對(duì)象 </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>
我想問(wèn)一下如果不指定方法函數(shù),就按unicode碼排序,這個(gè)unicode碼是什么?
還有在document.write(myarr.sort(sortNum));這里面調(diào)用sortNum函數(shù)為什么不用寫(xiě)成”sortNum()“呢
還有就是當(dāng)我們需要升序排列的時(shí)候,它說(shuō)當(dāng)返回值為>-1&&<1的時(shí)候表示A和B具有相同的排列順序,這是我們假設(shè)A=0.9,B=0.6,當(dāng)它比較a-b的時(shí)候返回值就是0.3符合>-1&&<1,這時(shí)A是和B排在一起,就是0.9排在0.6之前對(duì)嗎?
2015-12-15
計(jì)算機(jī)只能存儲(chǔ)2進(jìn)制數(shù)據(jù)。所以你寫(xiě)的這些字符串,計(jì)算機(jī)會(huì)編碼成二進(jìn)制的,編碼的時(shí)候就按照unicode碼來(lái)編。
舉2個(gè)例子,比如字母A,它的編碼是65,
? ? ? ? ? ? ? ? ? ? ?字母B,它的編碼是66,
如果按照unicode升序排列的話(huà),顯然65<66,所以字母A排在字母B前面。
在比如,漢字 中,它的編碼是20013
? ? ? ? ? ? 漢字 國(guó),它的編碼是22269
如果按照unicode降序排列的話(huà),顯然22269 > 20013,所以 國(guó) 將會(huì)排在 中 前面