API全局参数
基础函数
常用函数
日期函数
高级函数
浏览器函数
三、如何全局使用xe-utils
3.1 安装xe-utils
3.1.1 ES6方式(推荐):
3.1.2 CDN安装
3.1.3 AMD安装
3.2 全局配置
3.3 全局参数配置(可省略)
3.4 使用
4、功能扩展(使用mixin)
4.1 写功能js
4.2 main.js中配置
4.3 调用自定义函数
5、常见的操作
5.1 日期操作
最近,做项目中发现了一个很流弊的通用函数库,githup上人家把常用的函数给写好了,项目中只需要调用即可使用函数,不需要自己SB的整半天。这个函数库的名称叫做:xe-Utils
一、xe-Utils介绍
============
xe-utils提供了一套实用的基础函数、任意格式的日期转换函数,浏览器相关操作函数等。
二、xe-utils API介绍
================
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 排除指定的属性值 或者 接收一个判断函数,返回一个新的对象
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
最后
除了简历做到位,面试题也必不可少,整理了些题目,前面有117道汇总的面试到的题目,后面包括了HTML、CSS、JS、ES6、vue、微信小程序、项目类问题、笔试编程类题等专题。
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
、微信小程序、项目类问题、笔试编程类题等专题。
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-OC7HsLZA-1712458657750)]