前端-常用函数记录-持续更新

// 获取当前路径下?问号后边的值
GetQueryString = function (name) { const reg = new RegExp (`(^|&)${name}=([^&]*)(&|$)`); const href = window.location.href; const index = href.indexOf('?'); const r = href.substr(index + 1).match (reg); if (r != null) return unescape (r[2]); return null; };
调用示例:
  获取
“https://www.google.com/search?q=baidu” 这个路径 “q” 后面的 “baibu
  templateId('q');
  "baidu"
// 全局唯一ID函数 uuid
GetUuid = function () {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace (/[xy]/g, c => { let r = (Math.random () * 16) | 0; let v = c == 'x' ? r : (r & 0x3) | 0x8; return v.toString (16); }); }
调用示例:
  GetUUid();
  "327aaf38-c195-4000-b5c4-d36bf9b2894e"

 

// 对象数组去重
arrayUnique = function (songs) { const result = {}; const finalResult = []; for (let i = songs.length - 1; i >= 0; i--) { result[songs[i].name] = songs[i]; } Object.keys(result).map((item) => finalResult.push(result[item])); return finalResult; }

// 拉取某个文件夹下面的所有文件
loadAllFile = function ('filePath','fileExp') {     const filesMD = require.context(filePath, true,fileExp); return filesMD.keys(); }

 

/**
 * 自定义排序
 * @param { 排序key,目前支持数字 } objKey
 * @param { 升序 asc | 降序 desc } order
 * @returns
 */
export function sortDiy(objKey, order = 'asc') {
  return function (obj1, obj2) {
    let val1 = obj1[objKey];
    let val2 = obj2[objKey];
    if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
      val1 = Number(val1);
      val2 = Number(val2);
    }
    if (val1 < val2) {
      return order === 'asc' ? -1 : 1;
    }
    if (val1 > val2) {
      return order === 'asc' ? 1 : -1;
    }
    return 0;
  };
}

/**
 * 自定义排序
 * @param { 排序key,目前支持时间 } objKey
 * @param { 升序 asc | 降序 desc } order
 * @returns
 */
export function sortDiyTime(objKey, order = 'asc') {
  return function (obj1, obj2) {
    const val1 = obj1[objKey];
    const val2 = obj2[objKey];
    if (Date.parse(val1) < Date.parse(val2)) {
      return order === 'asc' ? -1 : 1;
    }
    if (Date.parse(val1) > Date.parse(val2)) {
      return order === 'asc' ? 1 : -1;
    }
    return 0;
  };
}

 

posted on 2020-05-28 12:16  忘忧很努力呀~  阅读(228)  评论(0编辑  收藏  举报