你要的几个JS实用工具函数(持续更新)

今天,我们来总结下我们平常使用的工具函数,希望对大家有用。1、封装fetch源码:/** * 封装fetch函数,用Promise做回调 * @type {{get: (function(*=)), post: (function(*=, *=))}} */const fetchUtil = { get: (url) => { return new Promise((resolve, reject) => { fetch(url, { method: ‘GET’, headers: { ‘Content-Type’: ‘application/x-www-form-urlencoded’, } }).then((response) => response.json()).then(response => { resolve(response); }).catch(err => { reject(new Error(err)); }); }); }, post: (url, params) => { return new Promise((resolve, reject) => { fetch(url, { method: ‘POST’, headers: { ‘Content-Type’: ‘application/x-www-form-urlencoded’, }, body: params }).then((response) => response.json()).then(response => { resolve(response); }).catch(err => { reject(new Error(err)); }); }); }};export default fetchUtil;使用:import Fetch from “../util/FetchUtil.js”; // post请求 post(){ let params = “”; params += “phone=” + “xxxxxx” + “&password=”+”123456”; Fetch.post(“https://carvedu.com/api/user/sms”, this.params) .then(res => { console.log(res); }) .catch(err => { console.log(err); }); } // get请求 get() { Fetch.get(“https://carvedu.com/api/courses”) .then(res => { console.log(res); }) .catch(err => { console.log(err); }); }2、判断浏览器环境源码:function getSystem(){ const mac = /mac/i, linux = /linux/i, win = /win/i; const platform = navigator.platform.toLowerCase(); if(mac.test(platform)){ return ‘MAC’; } else if(win.test(platform)){ return ‘WIN’; } else if(linux.test(platform)){ return ‘Linux’; } return undefined;}const browser = { versions:function(){ let ret = ‘xxSys’; const u = navigator.userAgent; const isMobile = !!u.match(/AppleWebKit.*Mobile.*/), ios = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), android = u.indexOf(‘Android’) > -1 || u.indexOf(‘Adr’) > -1; if(isMobile){ if(ios) return ‘IOS’; if(android) return ‘Android’; } else { ret = getSystem() || ret; } return ret; }(),};export default browser;使用:import browser from “../util/browers.js”console.log(browser.versions);3、计算时间差源码:let startTime = new Date().getTime();export const start = (v) =>{ if(v===’reset’){ return startTime = new Date().getTime(); } else{ return startTime; }}使用:import {start} from “../util/Time.js”click(){ let userTime = new Date().getTime()-start(); start(‘reset’);}4、封装正则库源码:export default { // 正则 regExp:()=>{ return { mPattern :/^1[345789]d{9}$/, //手机号验证规则 cP : /^[1-9]d{5}(18|19|([23]d))d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{3}[0-9Xx]$/, // 身份证验证规则 regCode : /^d{4}$/ //验证码规则 /*……*/ } }}使用:import regExp from ‘../util/regExp.js’reg(){ var value =”” // 手机号码举例 console.log(regExp.regExp().mPattern.test(value));},

。。。。。。。。。。。。。

作者:Vam的金豆之路

篇幅有限更多请见扩展链接:http://www.mark-to-win.com/tutorial/50912.html

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
用户投稿
上一篇 2022年7月8日 06:24
下一篇 2022年7月8日 06:24

相关推荐

  • 存储过程语法(sql server存储过程语法)

    今天小编给各位分享存储过程语法的知识,其中也会对sql server存储过程语法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! oracle存储过程基本语法…

    2022年11月26日
  • 成都健康码崩了身份证怎么用(成都健康码小程序)

    成都近期也是不断出现疫情新增病例,大家在出行的时候都是需要出示健康码的,而今天成都健康码奔溃无法打开也让不少上班族在出行的时候导致不便。成都健康码崩了身份证怎么用?据悉在成都健康码…

    2022年11月24日
  • 2022淘宝双12满减是多少规则一览(2022淘宝双12活动什么时候开始)

    还有不到一个月的时间今年的淘宝双12活动就要开始了,还没有在双11期间买到心仪商品的用户,就可以在双12再进行购买了。对于买家来说最关心的就是淘宝双12的优惠力度了,那么,2022…

    2022年11月21日
  • 拼多多免费领商品有什么规则(拼多多免费领商品金币后面是什么)

    拼多多免费领商品活动相信不少小伙伴都参加过,吸引力还是很大的,只要砍价成功就可以免费领到商品,一些小伙伴第一次参加不知道拼多多免费领商品有什么规则?下面小编为大家带来拼多多免费领商…

    2022年11月21日
  • 淘宝大号怎样开通小号(一个手机号可以注册几个淘宝账号)

    做淘宝,小号是避不开的话题。自己注册淘宝小号限购,买淘宝老白号使用也是各种异常 限购,异常,无法登录…..怎么办?老号商干货分享!内容不长,都是实战总结技术,了解这几点少走弯路! …

    2022年11月21日
  • 微博话题如何推广微博话题引流技巧揭秘

    今天的主题是一位粉丝提问的,他说自己业务相关的微博话题被竞争对手抢掉了主持人,发的话题微博被对方停闭,基本处于被对方垄断的状态,想问一下有什么方法能够解决,那么,这次老马就来聊一聊…

    2022年11月20日
  • 快手号不要了怎么注销(怎样注销快手号)

    快手我们进行观看短视频的时候,出现了重置新账号,不少小伙伴们想知道这个是怎么回事,不知道的小伙伴们,就让小编给大家详细的讲讲吧。 快手出来重置新账号是咋回事 快手出来重置新账号说明…

    2022年11月20日
  • 抖音黄v认证可以修改吗如何取消 抖音黄v认证是永久的吗

    在玩抖音的时候经常会看到有的账号是黄v认证的,大家知道这个黄v认证是怎么申请的吗?申请了之后怎么去修改取消呢?下面就和小编一起来看看抖音黄V认证如何取消的,一起来看看吧。 抖音黄V…

    2022年11月18日
  • 抖音怎样用大号建小号(一个手机号怎么申请2个抖音)

    今年已经是抖音上线的第五个年头了,现在的抖音早已经趋于成熟,各种算法和推荐机制教程横飞,可很多人都没有注意到抖音账号注册这个方面,其实运营账号从注册时就已经开始了。所以本文就来讲讲…

    2022年11月18日
  • 微信群没有减号怎么踢人(微信群聊怎么踢人)

    我们在创建群之后,最头疼的问题就是有人在群里发垃圾营销广告链接了。但是我们有时候经常会因为手头上刚好有事情在做不能及时踢掉这些人而导致社群人员流失。 现在企业微信有了防骚扰功能,我…

    2022年11月18日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息