导航:首页 > 编程语言 > 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数组按字母排序相关的资料

热点内容
编程一级考试要带什么证件 浏览:923
extjs表格修改前数据 浏览:612
什么是数据库的函数 浏览:722
oppo手机怎么用数据线连接电脑 浏览:247
恒智天成备份文件在哪里 浏览:976
电脑没联网怎么拷贝文件 浏览: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

友情链接