资讯专栏INFORMATION COLUMN

xe-utils 函数库,javascript 工具类

DrizzleX / 1217人阅读

摘要:最新版本见,点击查看历史版本提供一套实用的基础函数任意格式的日期转换函数,浏览器相关操作函数等全局参数设置默认全局参数基础函数判断是否非数值判断是否为有限数值判断判断是否数组判断是否小数判断是否整数判断是否对象判断是否对象判断是否对象判断是

最新版本见 Github,点击查看历史版本

XEUtils 提供一套实用的基础函数、任意格式的日期转换函数,浏览器相关操作函数等...

API

全局参数

setup ( options ) 设置默认全局参数

基础函数

isNaN (val) 判断是否非数值

isFinite (val) 判断是否为有限数值

isUndefined (val) 判断 Undefined

isArray (val) 判断是否数组

isFloat (val) 判断是否小数

isInteger (val) 判断是否整数

isBoolean (val) 判断是否 Boolean 对象

isString (val) 判断是否 String 对象

isNumber (val) 判断是否 Number 对象

isRegExp (val) 判断是否 RegExp 对象

isObject (val) 判断是否 Object 对象

isPlainObject (val) 判断是否是一个对象

isDate (val) 判断是否 Date 对象

isError (val) 判断是否 Error 对象

isTypeError (val) 判断是否 TypeError 对象

isEmpty (val) 判断是否为空,包括空对象、空数值、空字符串

isNull (val) 判断是否为 Null

isSymbol (val) 判断是否 Symbol 对象

isArguments (val) 判断是否 Arguments 对象

isElement (val) 判断是否 Element 对象

isDocument (val) 判断是否 Document 对象

isWindow (val) 判断是否 Window 对象

isFormData (val) 判断是否 FormData 对象

isMap (val) 判断是否 Map 对象

isWeakMap (val) 判断是否 WeakMap 对象

isSet (val) 判断是否 Set 对象

isWeakSet (val) 判断是否 WeakSet 对象

isLeapYear (date) 判断是否闰年

isEqual (obj1, obj2) 深度比较两个对象之间的值是否相等

isDateSame (date1, date2, format) 判断两个日期是否相同

常用函数

toNumber ( num ) 转数值

toInteger ( num ) 转整数

toFixedNumber ( num, digits ) 和 Number.toFixed 类似,区别就是不会对小数进行四舍五入,结果返回数值

toFixedString ( num, digits ) 和 Number.toFixed 类似,区别就是不会对小数进行四舍五入,结果返回字符串

toArray ( array ) 将对象或者伪数组转为新数组

toStringJSON (str) 字符串转 JSON

toJSONString (obj) JSON 转字符串

getType (obj) 获取对象类型

getSize ( obj ) 返回对象的长度

uniqueId ( prefix ) 获取一个全局唯一标识

uniq ( array ) 数组去重

union ( ...array ) 将多个数的值返回唯一的并集数组

random ( min, max ) 获取一个指定范围内随机数

range ( start, stop, step ) 序号列表生成函数

clear (obj[, defs, assigns]) 清空对象; defs如果不传(清空所有属性)、如果传对象(清空并继承)、如果传值(给所有赋值)

remove (obj, iteratee) 移除对象属性

assign (destination, ...sources) 浅拷贝一个或者多个对象到目标对象中,如果第一值是true,则使用深拷贝

clone (obj, deep) 浅拷贝/深拷贝

destructuring (obj, ...target) 将一个或者多个对象值解构到目标对象

trim ( str ) 去除字符串左右两边的空格

trimLeft ( str ) 去除字符串左边的空格

trimRight ( str ) 去除字符串右边的空格

escape ( str ) 转义HTML字符串,替换&, <, >, ", ", `字符

unescape ( str ) 反转 escape

camelCase ( str ) 将带驼峰字符串转成字符串

kebabCase ( str ) 将字符串转成驼峰字符串

repeat ( str, count ) 将字符串重复 n 次

padStart ( str, targetLength, padString ) 用指定字符从前面开始补全字符串

padEnd ( str, targetLength [, padString] ) 用指定字符从后面开始补全字符串

startsWith ( str, val [, startIndex] ) 判断字符串是否在源字符串的头部

endsWith ( str, val [, startIndex] ) 判断字符串是否在源字符串的尾部

slice ( array, start, end ) 裁剪 Arguments 或数组 array,从 start 位置开始到 end 结束,但不包括 end 本身的位置

indexOf (obj, val) 返回对象第一个索引值

findIndexOf (obj, iteratee [, context]) 返回对象第一个索引值

lastIndexOf (obj, val) 从最后开始的索引值,返回对象第一个索引值

findLastIndexOf (obj, iteratee [, context]) 从最后开始的索引值,返回对象第一个索引值

includes (obj, val) 判断对象是否包含该值,成功返回 true 否则 false

includeArrays (array1, array2) 判断数组是否包含另一数组

each ( obj, iteratee [, context] ) 通用迭代器

arrayEach ( obj, iteratee [, context] ) 数组迭代器

objectEach ( obj, iteratee [, context] ) 对象迭代器

lastEach ( obj, iteratee [, context] ) 通用迭代器,从最后开始迭代

lastArrayEach ( obj, iteratee [, context] ) 数组迭代器,从最后开始迭代

lastObjectEach ( obj, iteratee [, context] ) 对象迭代器,从最后开始迭代

forOf ( obj, iteratee [, context] ) 通用迭代器,支持 return false 跳出循环 break

lastForOf ( obj, iteratee [, context] ) 通用迭代器,从最后开始迭代,支持 return false 跳出循环 break

keys (obj) 获取对象所有属性

values (obj) 获取对象所有值

entries (obj) 获取对象所有属性、值

first (obj) 获取对象第一个值

last (obj) 获取对象最后一个值

groupBy ( obj, iteratee [, context] ) 集合分组,默认使用键值分组,如果有 iteratee 则使用结果进行分组

countBy ( obj, iteratee [, context] ) 集合分组统计,返回各组中对象的数量统计

sortBy ( arr, iteratee [, context] ) 数组按属性值升序

shuffle ( array ) 将一个数组随机打乱,返回一个新的数组

sample ( array, number ) 从一个数组中随机返回几个元素

some ( obj, iteratee [, context] ) 对象中的值中的每一项运行给定函数,如果函数对任一项返回 true,则返回 true,否则返回 false

every ( obj, iteratee [, context] ) 对象中的值中的每一项运行给定函数,如果该函数对每一项都返回 true,则返回 true,否则返回 false

filter ( obj, iteratee [, context] ) 根据回调过滤数据

find ( obj, iteratee [, context] ) 查找匹配第一条数据

findKey ( obj, iteratee [, context] ) 查找匹配第一条数据的键

map ( obj, iteratee [, context] ) 指定方法后的返回值组成的新数组

objectMap ( obj, iteratee [, context] ) 指定方法后的返回值组成的新对象

pick (obj, array) 根据 keys 过滤指定的属性值 或者 接收一个判断函数,返回一个新的对象

omit (obj, array) 根据 keys 排除指定的属性值 或者 接收一个判断函数,返回一个新的对象

copyWithin ( array, target, start [, end] ) 浅复制数组的一部分到同一数组中的另一个位置,数组大小不变

sum ( obj, iteratee [, context] ) 求和函数,将数值相加

mean ( obj, iteratee [, context] ) 求平均值函数

reduce ( array, iteratee [, initialValue] ) 接收一个函数作为累加器,数组中的每个值(从左到右)开始合并,最终为一个值

chunk ( array, size ) 将一个数组分割成大小的组。如果数组不能被平均分配,那么最后一块将是剩下的元素

min ( arrb[, iteratee] ) 获取最小值

max ( arr [, iteratee] ) 获取最大值

commafy ( num [, options] ) 数值千分位分隔符、小数点

日期函数

now ( ) 返回当前时间戳

timestamp ( date[, format] ) 将日期转为时间戳

toStringDate ( str, format ) 任意格式字符串转为日期

toDateString ( date [, format, options] ) 日期格式化为任意格式字符串

getWhatYear ( date, year [, month] ) 返回前几年或后几年的日期,可以指定年初(first)、年末(last)、月份(0~11),默认当前

getWhatMonth ( date, month [, day] ) 返回前几月或后几月的日期,可以指定月初(first)、月末(last)、天数,默认当前

getWhatWeek ( date, week [, day] ) 返回前几周或后几周的日期,可以指定星期几(0~6),默认当前

getWhatDay ( date, day [, mode] ) 返回前几天或后几天的日期

getDayOfYear ( date [, year] ) 返回某个年份的天数,可以指定前几个年或后几个年,默认当前

getYearDay ( date ) 返回某个年份的第几天

getYearWeek ( date ) 返回某个年份的第几周

getMonthWeek ( date ) 返回某个月份的第几周

getDayOfMonth ( date [, month] ) 返回某个月份的天数,可以指定前几个月或后几个月,默认当前

getDateDiff ( startDate, endDate [, rules] ) 返回两个日期之间差距,如果结束日期小于开始日期 done 为 fasle

高级函数

toArrayTree ( array, options ) 一个高性能的树结构转换函数,将一个带层级的数据列表转成树结构

toTreeArray ( array, options ) 将一个树结构转成数组列表

property ( path ) 返回一个获取对象属性的函数

pluck ( array, key ) 获取数组对象中某属性值,返回一个数组

invoke ( list, path, ...arguments ) 在list的每个元素上执行方法,任何传递的额外参数都会在调用方法的时候传递给它

zip ( ) 将每个数组中相应位置的值合并在一起

unzip ( arrays ) 与 zip 相反

delay (callback, wait[, ...arguments]) 该方法和 setTimeout 一样的效果,区别就是支持额外参数

bind (callback, context[, ...arguments]) 创建一个绑定上下文的函数

once (callback, context[, ...arguments]) 创建一个只能调用一次的函数,只会返回第一次执行后的结果

after (count, callback, context) 创建一个函数, 调用次数超过 count 次之后执行回调并将所有结果记住后返回

before (count, callback, context) 创建一个函数, 调用次数不超过 count 次之前执行回调并将所有结果记住后返回

throttle (callback, wait[, options]) 创建一个策略函数,当被重复调用函数的时候,至少每隔多少秒毫秒调用一次该函数

debounce (callback, wait[, options]) 创建一个防反跳策略函数,在函数最后一次调用多少毫秒之后才会再次执行,如果在期间内重复调用会重新计算延迟

浏览器函数

serialize ( query ) 序列化查询参数

unserialize ( str ) 反转序列化查询参数

browse ( ) 获取浏览器信息

locat ( ) 获取地址栏信息

parseUrl ( url ) 解析 URL 参数

getBaseURL ( ) 获取上下文路径

cookie ( name, value, options ) Cookie 操作函数

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/93175.html

相关文章

  • vue 使用 xe-utils 函数

    npm install xe-utils vxe-utils --save 通过 Vue.use() 来全局安装 import Vue from vue import XEUtils from xe-utils import VXEUtils from vxe-utils // mounts 可以设置[cookie, browse, locat] Vue.use(VXEUtils, XEUtil...

    brianway 评论0 收藏0
  • 2017年前端框架、工具大比拼

    摘要:相比于开发人员的数量,目前框架类库和工具的数量似乎更多一些。本文将会讨论目前最为流行的客户端框架类库和工具以及它们之间的基本差异。典型的类库包括字符串处理日期元素事件动画网络请求等功能。所以不需要明确的区分类库框架和工具。 相比于JavaScript开发人员的数量,目前JavaScript框架、类库和工具的数量似乎更多一些。截至2017年5月,GitHub上的快速搜索显示,有超过110...

    Alliot 评论0 收藏0
  • 前端常用插件、工具汇总

    摘要:页面调试腾讯开发维护的代码调试发布,错误监控上报,用户问题定位。同样是由腾讯开发维护的代码调试工具,是针对移动端的调试工具。前端业务代码工具库。动画库动画库,也是目前通用的动画库。 本人微信公众号:前端修炼之路,欢迎关注 本篇文章整理自己使用过的和看到过的一些插件和工具,方便日后自己查找和使用。 另外,感谢白小明,文中很多的工具来源于此。 弹出框 layer:http://layer....

    GitCafe 评论0 收藏0
  • javascript功能插件大集合 前端常用插件 js常用插件

    摘要:转载来源包管理器管理着库,并提供读取和打包它们的工具。能构建更好应用的客户端包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。很棒的组件集合。隐秘地使用和用户数据。 转载来源:https://github.com/jobbole/aw... 包管理器管理着 javascript 库,并提供读取和打包它们的工具。•npm – npm 是 javasc...

    netmou 评论0 收藏0
  • javascript功能插件大集合 前端常用插件 js常用插件

    摘要:转载来源包管理器管理着库,并提供读取和打包它们的工具。能构建更好应用的客户端包管理器。一个整合和的最佳思想,使开发者能快速方便地组织和编写前端代码的下一代包管理器。很棒的组件集合。隐秘地使用和用户数据。 转载来源:https://github.com/jobbole/aw... 包管理器管理着 javascript 库,并提供读取和打包它们的工具。•npm – npm 是 javasc...

    Hydrogen 评论0 收藏0

发表评论

0条评论

DrizzleX

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<