導航:首頁 > 編程語言 > js數組按字母排序

js數組按字母排序

發布時間:2023-12-07 17:55:33

① 我想問一下為什麼在js里排序是1,11,2,21,3的這種排序用sort寫出來就是這種,想知道為什麼

幫你找了一下答案抄:(望採納)

默認情況下sort方法是按ascii字母順序排序的
如:1,2,3,4,5,10 結果是:1,10,2,3,4,5 。而不是按數字大小排序

對應方式:
數組.sort(function(i,j){return i>j?1:-1}); //升序
降序你自己想吧。 ^^

② js中如何對含有特殊字元的數組進行排序

javascript的數組有sort方法。按照數值的大小對數字進行排序,必須使用一個排序函數:a代表回數組的前一位,答b代表數組的後一位。var arr = [1,2,3,5,2,5,3,6,2,6,2,6,2,5,9,6,8,54,3,6,8];arr.sort(function(a,b){return a-b});這樣是升序排列。如果希望降序排列,就寫成return b-a;

③ javascript中文按照拼音首字母排序,如何實現

中文拼音排序一直都是很有趣的一個問題。推薦使用這個函數 String.prototype.localeCompare(),鏈接 MDN。首先用 localeCompare 試下拼音排序

var array = ['武漢', '北京', '上海', '天津'];

array.sort(

function compareFunction(param1, param2) {

return param1.localeCompare(param2);

}

);

array // ["北京", "上海", "天津", "武漢"]

然後根據 26 個英文字母分組排序,函數如下,

function pySegSort(arr) {

if(!String.prototype.localeCompare)

return null;

var letters = "*abcdefghjklmnopqrstwxyz".split('');

var zh = "阿八嚓噠妸發旮哈譏咔垃痳拏噢妑七呥扨它穵夕丫帀".split('');

var segs = [];

var curr;

letters.forEach(function(item,i){

curr = {letter: item, data:[]};

arr.forEach(function(item2){

if((!zh[i-1] || zh[i-1].localeCompare(item2) <= 0) && item2.localeCompare(zh[i]) == -1) {

curr.data.push(item2);

}

});

if(curr.data.length) {

segs.push(curr);

curr.data.sort(function(a,b){

return a.localeCompare(b);

});

}

});

return segs;

}

測試:

pySegSort(["我","不","懂","愛","啊","按","已","呀","選","縣"])

結果:

[{"letter":"a","data":["啊","愛","按"]},{"letter":"b","data":["不"]},{"letter":"d","data":["懂"]},{"letter":"w","data":["我"]},{"letter":"x","data":["縣","選"]},{"letter":"y","data":["呀","已"]}]

④ JS按照開頭首字母排序

functionstringSort(str){
if(typeofstr==='string')
str=str.split(',');
if(!Array.isArray(str)){
console.error('參數復類型錯制誤,必須為數組或以(,)分割的字元串.')
returnstr;
}
str.sort();
returnstr.join();
}
//測試
vartest1=["BB000","AB621","C752B","AC700","D5657"];
console.log(stringSort(test1));
vartest2="BB000,AB621,C752B,AC700,D5657";
console.log(stringSort(test2));

⑤ JS中數組如何重新排序

數組排序,你可以直接調用javascript原生自帶的sort()方法,比如下面的例子:
//Array.prototype.sort()//原生自帶的數組的排序方法;

varfruit=['apples','bananas','Cherries'];//定義一個數組
fruit.sort();//['Cherries','apples','bananas'];//按字母排序的結果

varscores=[1,2,10,21];//定義一個數字排序,你發現其實還是按照字母序排列的
scores.sort();//[1,10,2,21]

如果希望按照期望的數字排序。
scores.sort(function(a,b){returna-b});//這樣的就可以了。結果為:211021

varthings=['word','Word','1Word','2Words'];
things.sort();//['1Word','2Words','Word','word']
//InUnicode,,
//.

⑥ javascript中數組的sort()方法不指定參數的排序規則是怎樣的

sort() 方法用於對數組的元素進行排序。
語法: arrayObject.sort(sortby)
參數:sortby 可選。規定排序順序。必須是函數。
說明:如果調用該方法時沒有使用參數,將按字母順序對數組中的元素進行排序,說得更精確點,是按照字元編碼的順序進行排序。要實現這一點,首先應把數組的元素都轉換成字元串(如有必要),以便進行比較。
如果想按照其他標准進行排序,就需要提供比較函數,該函數要比較兩個值,然後返回一個用於說明這兩個值的相對順序的數字。比較函數應該具有兩個參數 a 和 b,其返回值如下:
* 若 a 小於 b,在排序後的數組中 a 應該出現在 b 之前,則返回一個小於 0 的值。
* 若 a 等於 b,則返回 0。
* 若 a 大於 b,則返回一個大於 0 的值。

⑦ javascript 對數組從小到大進行排序怎麼做

1.如果調用該方法時沒有使用參數,將按字母順序對數組中的元素進行排序,說得更精確點,是按照字元編碼的順序進行排序。要實現這一點,首先應把數組的元素都轉換成字元串(如有必要),以便進行比較如果想按照其他標准進行排序,就需要提供比較函數CodeGo.net,該函數要比較兩個值,然後返回一個用於說明這兩個值的相對順序的數字。比較函數應該具有兩個參數a和b,其返回值
•若a小於b,在排序後的數組中a應該出現在b之前,則返回一個小於0的值•若a等於b,則返回0•若a大於b,則返回一個大於0的值<scripttype="text/javascript">
functionsortNumber(a,b)
{
returna-b
}
vararr=newArray(6)
arr[0]="10"
arr[1]="5"
arr[2]="40"
arr[3]="25"
arr[4]="1000"
arr[5]="1"
document.write(arr+"<br/>");
document.write(arr.sort(sortNumber));
</script>

⑧ js怎麼用sort把數組裡面的英文進行首字母排序,如圖,搞不懂這一行代碼,小白,求大佬。

harCodeAt(0) 方法返回字元串第一個字元的 Unicode 編碼。
sort()方法傳入的是一個函數,函內數有兩個參數容(pre,next)(參數名可以任意),依次傳入數組中的兩個元素,如果返回值小於0,則排序後pre排在next前面,

⑨ JS之JQ的map/rece/filter/sort/reverse

map 是遍歷數組,並返回一個新數組.

rece 是遍歷數組,把所有元素組合到一起:

filter 是遍歷數組,根據條件篩選 得出一個新數組

與我們之前用的數組方法僅僅返回一個新數組不同, sort 方法將改變原數組,返回被排序後的數組。
默認 :按字母順序或數字順序對數組中的元素進行排序。

sort 可以把比較函數作為參數傳入。比較函數有返回值,當 a 小於 b,返回一個負數;當 a 大於 b ,返回一個正數;相等時返回0。

如果沒有傳入比較函數,它將把值全部轉成字元串,並按照字母順序進行排序。

下面的例子將展示 sort 的使用,傳入的比較函數把元素按照從小到大的順序進行排列:

reverse 對數組進行反轉,對元素組操作,返回反轉後的數組。

concat 方法可以用來把兩個數組的內容合並到一個數組中。
concat 方法的參數應該是一個數組。參喊物數中的數組會拼接在原數組的後面,並作為一個新數組返回。
下面是一個拼接數明滲岩組的例子,用concat 把激御 otherArray 拼接在 oldArray 的後面:

⑩ js 怎麼把字元串組 按順序a-z,A-Z,0-9,的順序排列

<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01//EN""
">
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gbk">
<title>UntitledDocument</title>
<script>
window.onload=function(){
vara="1我來a2你b3他d";//要排序的字元串a
varb=a.split("");//分割源字元串a為數組b
b.sort();//數組b升序排序(系統自帶的方法)
varc=b.join("");//把數組b每個元素連接成字元串c
alert(c);//輸出最終排序好的字元串
}
</script>
</head>
<body>
</body>
</html>

整個過程注釋寫得很清楚了,希望對你有幫助

閱讀全文

與js數組按字母排序相關的資料

熱點內容
電腦沒聯網怎麼拷貝文件 瀏覽:224
wps工具欄怎麼換成中文 瀏覽:338
win7和xp共享文件 瀏覽:883
蘋果4代音量鍵沒反應 瀏覽:827
怎樣打開tif文件 瀏覽:153
java下載文件zip 瀏覽:440
qq瀏覽器壓縮文件怎麼設密碼 瀏覽:526
黃埔數控編程哪裡好 瀏覽:406
mac109升級1010 瀏覽:691
在java的菜單如何導入文件 瀏覽:982
現在什麼網站銷量最高 瀏覽:760
angularjsclass定義 瀏覽:157
ug數控編程怎麼導出程序 瀏覽:466
cmdb文件 瀏覽:710
鵯文件夾 瀏覽:763
網路輿情應對的基本理念是什麼 瀏覽:433
word2007層次結構 瀏覽:456
去掉文件名的數字 瀏覽:713
word公司 瀏覽:710
淘寶店數據包怎麼上傳 瀏覽:341

友情鏈接