分享一些在工作中常用的實例函數(shù)

1.對數(shù)組成員特性進行分組

 function Group(arr = [], key) {
        return key
          ? arr.reduce(
              (t, v) => (!t[v[key]] && (t[v[key]] = []), t[v[key]].push(v), t),
              {}
            )
          : {}
      }
      const arr1 = [
        { area: 'GZ', name: 'YZW', age: 27 },
        { area: 'GZ', name: 'TYJ', age: 25 },
        { area: 'SZ', name: 'AAA', age: 23 },
        { area: 'FS', name: 'BBB', age: 21 },
        { area: 'SZ', name: 'CCC', age: 19 }
      ]
      // 以地區(qū)area作為分組依據(jù)
      console.log(Group(arr1, 'area'))
  //{ GZ: Array(2), SZ: Array(2), FS: Array(1) }

2.對數(shù)組成員包含的關(guān)鍵字進行統(tǒng)計

function Keyword(arr = [], keys = []) {
        return keys.reduce(
          (t, v) => (arr.some(w => w.includes(v)) && t.push(v), t),
          []
        )
      }

      const text = [
        '今天天氣真好频伤,我想出去釣魚',
        '我一邊看電視,一邊寫作業(yè)',
        '小明喜歡同桌的小紅虱歪,又喜歡后桌的小君疼燥,真TM花心',
        '最近上班喜歡摸魚的人實在太多了悲伶,代碼不好好寫咸包,在想入非非'
      ]
      const keyword = ['偷懶', '喜歡', '睡覺', '摸魚', '真好', '一邊', '明天']
      Keyword(text, keyword)
      // ["喜歡", "摸魚", "真好", "一邊"]

3.字符串翻轉(zhuǎn)

function ReverseStr(str = '') {
        return str.split('').reduceRight((items, item) => items + item)
      }

      const str = 'pox最牛逼'
      ReverseStr(str)
      // "逼牛最xop"

4.數(shù)組成員獨立拆解

function Unzip(arr = []) {
        return arr.reduce(
          (items, item) => (item.forEach((w, i) => items[i].push(w)), items),
          Array.from({
            length: Math.max(...arr.map(item => item.length))
          }).map(v => [])
        )
      }
      const arr5 = [
        ['a', 1, true],
        ['b', 2, false]
      ]
      Unzip(arr5)
      // [["a", "b"], [1, 2], [true, false]]

5.用戶名-只保留姓氏或中間特殊處理

function formatName(name) {
        let newStr
        if (name.length === 2) {
          newStr = name.substr(0, 1) + '*' // 通過substr截取字符串從第0位開始截取,截取1個
        } else if (name.length > 2) {
          // 當(dāng)名字大于2位時
          let char = ''
          for (let i = 0, len = name.length - 2; i < len; i++) {
            // 循環(huán)遍歷字符串
            char += '*'
          }
          newStr = name.substr(0, 1) + char + name.substr(-1, 1)
        } else {
          newStr = name
        }

        return newStr
      }
      console.log(formatName('黃飛燕')) // 輸出 黃*燕

6.使用正則表達(dá)式凛驮,只保留姓后面都變?yōu)?code>*

      var str8 = '王小明'
      var reg = /(?<=.)./g
      result = str8.replace(reg, '*')
      console.log(result) // 王**

7.使用正則表達(dá)式,手機號碼中間4位用星號*替換展示

    var phone = '13701134148'
    var resultPhone = phone.replace(/^(\d{3})\d{4}(\d+)/, '$1****$2')
    console.log(resultPhone) // 137****4148
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蜡饵,一起剝皮案震驚了整個濱河市弹渔,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌溯祸,老刑警劉巖肢专,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異焦辅,居然都是意外死亡博杖,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進店門筷登,熙熙樓的掌柜王于貴愁眉苦臉地迎上來剃根,“玉大人,你說我怎么就攤上這事前方”纷恚” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵惠险,是天一觀的道長苗傅。 經(jīng)常有香客問我,道長班巩,這世上最難降的妖魔是什么渣慕? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮抱慌,結(jié)果婚禮上逊桦,老公的妹妹穿的比我還像新娘。我一直安慰自己遥缕,他們只是感情好卫袒,可當(dāng)我...
    茶點故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布宵呛。 她就那樣靜靜地躺著单匣,像睡著了一般。 火紅的嫁衣襯著肌膚如雪宝穗。 梳的紋絲不亂的頭發(fā)上户秤,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天,我揣著相機與錄音逮矛,去河邊找鬼鸡号。 笑死,一個胖子當(dāng)著我的面吹牛须鼎,可吹牛的內(nèi)容都是我干的鲸伴。 我是一名探鬼主播府蔗,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼汞窗!你這毒婦竟也來了姓赤?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤仲吏,失蹤者是張志新(化名)和其女友劉穎不铆,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體裹唆,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡誓斥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了许帐。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片劳坑。...
    茶點故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖成畦,靈堂內(nèi)的尸體忽然破棺而出泡垃,到底是詐尸還是另有隱情,我是刑警寧澤羡鸥,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布蔑穴,位于F島的核電站,受9級特大地震影響惧浴,放射性物質(zhì)發(fā)生泄漏存和。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一衷旅、第九天 我趴在偏房一處隱蔽的房頂上張望捐腿。 院中可真熱鬧,春花似錦柿顶、人聲如沸茄袖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽宪祥。三九已至,卻和暖如春家乘,著一層夾襖步出監(jiān)牢的瞬間蝗羊,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工仁锯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留耀找,地道東北人。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓业崖,卻偏偏與公主長得像野芒,于是被迫代替她去往敵國和親蓄愁。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,490評論 2 348