个人项目过程中常用的一些业务代码

随机数:

function randomNumber(min,max) {

    return Math.floor(Math.random()*(max-min+1)+min)

}

随机16进制颜色

function randomColor() {

    return Math.random().toString(16).substr(-6);

}

删除数组中的某一项:

  Array.prototype.remove = function (dx) {

            if (this.indexOf(dx) > -1) {

                this.splice(this.indexOf(dx), 1)

            }

        }

在附件的url中获取附件类型:

url.slice(url.lastIndexOf(".") + 1);

非对象数组去重:

1.Array.from(new Set(array));

2.let r  = array.filter((item,index,arrays) => {

      return arrays.indexOf(item) === index;

});

对象数组去重:

var obj = {};

    arr = arr.reduce(function(item, next) {

      obj[next.key] ? '' : obj[next.key] = true && item.push(next);

      return item;

    }, []);

获取对象所有的属性名并按照asc表顺序返回:

Object.keys();

获取对象所有的属性名对应的值并按照asc表顺序返回:

Object.values();

数组乱序:

function Random(min,max) {

return

}

changeRandom(list) {

let arr=list.slice()

for(let i=0;i<arr.length;i++) {

let k=Math.floor(Math.random()*(i+1)

let t=arr[i]

arr[i]=arr[k]

arr[k]=t

}

return arr

}

对象数组中将旧版中的某一属性赋值给新版(这个属性是通过操作获取的,并不是接口直接返回):

在旧版中将有操作后获取值的键值对存在一个新对象中,然后按照条件将新版中的键值对重新赋值。

判断对象中是否存在某个属性,如果有则将对象值返回,否则返回"";

export function JudpeAttrIsExis(arr, obj) {

    let attr = "";

    for (let i = 0; i < arr.length; i++) {

        if(obj[arr[i]]) {

            attr = arr[i];

            break;

        }

    }

    return obj[attr];

};

eg: let url = JudpeAttrIsExis(["fileUrl","fileurl","file_url","url"],ele);

筛选素数:

function get_primes(arr) {

  var i;

  return arr.filter(function (element) {

    var flag = true;

    if (element < 2) {

      flag = false;

    } else {

      for (var i = 2; i < element; i++) {

        if (element % i == 0) {

          flag = false;

          break;

        }

      }

    }

    return flag;

  })

}

根据菜单名称判断菜单树中是否存在此菜单

handleMenuIsExis = (data, menuName) => {

        let flag = false;

        for (let i = 0; i < data.length; i++) {

            if (data[i].menuName == menuName) {

                flag = true;

                break;

            } else {

                flag = data[i].childList ? this.handleMenuIsExis(data[i].childList, menuName) : false;

                if (flag) {

                    break;

                }

            }

        }

        return flag;

    }

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容