let aNew = [ ] ; for ( let i = 0 ; i < arrData . length ; i ++ ) { if ( arrData [ i ] . hrAlias . replace ( / [^a-zA-Z] / g , '' ) ) { let a = arrData [ i ] . hrAlias . replace ( / [^a-zA-Z] / g , '' ) . substring ( 0 , 1 ) ; obj [ a ] = arrData [ i ] } else { aNew . unshift ( arrData [ i ] ) ; let keys = Object . keys ( obj ) . sort ( ) ; for ( let i = keys . length - 1 ; i >= 0 ; i -- ) { aNew . push ( obj [ keys [ i ] ] ) aNew . reverse ( ) ; js数组对象按字母排序: let arrData = [{ "hrAlias": "B组" }, { "hrAlias": "A组" }, { "hrAlias": "全部" }]; let obj = {}; // 可以是数组 let aNew = []; for (let i = 0; i &lt; arrData.length; i+
默认情况下,对字符串 排序 ,是按照ASCII的大小比较的,现在,我们提出 排序 应该忽略大小写,按照 字母 排序 。要实现这个算法,不必对现有代码大加改动,只要我们能定义出忽略大小写的比较算法就可以: var arr = ['Google', 'apple', 'Microsoft']; arr.sort(function (s1, s2) { x1 = s1.toUpperCase(); x2 = s2.toUpperCase(); if (x1 < x2) {
最近在做功能的时候需要对后台返回的 对象 数组 根据key值进行 排序 ,平时我们对 数组 进行 排序 一般用到的比较多就是sort直接使用,其实sort方法是可以入参函数进行 排序 的。 语法:array Object .sort(sortby) sortby:可选,规定 排序 顺序。必须是函数。 如果调用该方法时没有使用参数,将按 字母 顺序对 数组 中的元素进行 排序 ,说得更精确点,是按照字符编码的顺序进行 排序 。要实现...
["eat", "tea", "tan", "ate", "nat", "bat"].sort( (a,b)=>{ return a[0].charCodeAt()-b[0].charCodeAt() //输出 ["ate", "bat", "eat", "nat", "tea", "tan"] // js 中字符减法得到的是NaN , 即 'b' - 'a' 等于NaN,故不能直接用 a -b
先获取汉字拼音,可以参照https://github.com/xinglie/pinyin,其中重点看下index. js 文件, 将index的内容复制到你的项目中的spell. js 文件中,并引入import Pinyin from ‘…/…/utils/spell’, 然后写一个用于 数组 排序 的方法,如下 export const spellSort = (list)=>{ let pinyinArray = [] let reg = /^[A-Za-z]*$/; list.map((v)=