zoukankan      html  css  js  c++  java
  • lodash 中常用的方法

    odash是js集Array/Object/String/Function的Util于一身。

    lodash打包了Array/Object/String/Function里一些Api,好处是连ES6的也打包了,所以让你想在ES5环境下使用诸如Array#reduce#includes#some#every等时可以借lodash来帮忙

    lodash可以让代码更简短,以下列几个最频繁使用的方法:

    _.range(10) 

    //生成元素为0到9的数组

    _.times(10, (i)=>console.log(i))

     //循环10次

    _.uniqueId()

     //生成不同的id,用于元素中的id值再好不过

    _.startWith 

    //判断字符串是否以xx开头

    _.endWith 

    //判断字符串是否以xx结尾

    _.truncat 

    //截取指定长度后加… 用于处理标题过长再好不过

    _.template 

    //es6有字符串模板的语法,而lodash是es5的替代方案

    _.assign

     //合并,es6有Object.assign,类似于jQuery.extend

    _.assignIn 

    //lodash里很多方法带In的都是可枚举原型链上的属性

    _.defaults 

    //安全合并,即忽略undefined/null的重写

    _.findKey 

    //根据value的属性值找key

    .mapKeys

     //遍历重写key, 相当于.forIn

    .mapValues 

    //遍历重写value , 相当于.forIn

    _.invert 

    //反转映射,快速通过value值找key

    _.omit 

     //返回移除部分属性的副本,比如提交表单时有些字段不要提交

    _.pick 

    //与omit相反,提取部分属性的副本,比如只提交某些字段

    _. clamp

     //确认所给值只在min,max之间

    _.max 

    //最大

    _.min

    //最小

    _.sum

     //求和

    _.random

     //生成随机数

    _.round 

    //四舍五入,允许指定精确位数

    _.isNumber

    _.isInterger

    _.isFunction

    _.isPlainObject

    _.isArray

    _.isDate

    _.isElement

    _.isNil 

    //null or undefined

    _.isEmpty 

    //{} or 空数组

    _.isEqual 

    //支持对象和数组

    _.isMatch

     //匹配对象属性值

    _.cloneDeep 

    //深度复制

    _.clone 

    //浅复制

    _.once 

    //只执行一次

    _.before 

    //最多n-1次

    _.after 

     //n次后执行

    _.debounce 

    //忽略频繁执行

    _.union

     //合并两数组,去重

    _.uniq

     //去重

    _.pull(array,element1,element2) 

    // 直接在array中移除元素,

    _.without(array,element1,element2) 

    //得到新array中移除元素

    _.remove(array, function) 

    //直接在array移除在function返回true的元素

    _.sameple(array) 

    //随机取1

    _.samepleSize(array, int)

    //  随机取n

    _.shuffle(array)

     //乱序, jQuery.shuffle

    _.find(array, function | object) 

    //根据function返回值和对象查找1个结果

    _.filter(array, function | object) 

    //根据function返回值和对象查找多个结果

    _.groupBy(array, string) 

    //分组,与多合一相反

    _.keyBy(array, string)

     //分组,类似groupBy, 但只有唯一值

    _.countBy(array, string) 

    //分组统计

    _.orderBy(array, array, array)

    _.sortBy(array, array)

    _.difference(array1,array2)

     //找不同于array2,元素是Object用differenceBy

    _.xor(array1,array2) 

    //得到非交集,元素是Object用xorBy

    _.intersection(array1,array2) 

    //得到交集,元素是Object用intersectionBy

  • 相关阅读:
    JAVA中变量的类型及命名规范
    JAVA、JDK等入门概念,下载安装JAVA并配置环境变量
    大家好,我是一个JAVA初学者,想在这里记下自己学习过程中的点点滴滴,请多多关照
    多线程并发问题解决之redis锁
    设计模式之动态代理
    设计模式之静态代理
    spring之IOC模拟实现
    spring boot+kafka整合
    metrics+spring+influxdb整合
    MongoError: no primary found in replicaset
  • 原文地址:https://www.cnblogs.com/mouseleo/p/10293950.html
Copyright © 2011-2022 走看看