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
lodash 中常用的方法