1、格式化字符串

String.prototype.format = function () {
let args = arguments;
return this.replace(/\{(\d+)\}/g,(item,idx) => {
return args[idx];
});
};

2、格式化日期

Date.prototype.format = function (fmt) {
let o = {
'M+': this.getMonth() + 1,
'd+': this.getDate(),
'H+': this.getHours(),
'm+': this.getMinutes(),
's+': this.getSeconds(),
'q+': Math.floor((this.getMonth() + 3) / 3),
'S': this.getMilliseconds()
};
if (/(y+)/.test(fmt)){
fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
}
for (let k in o){
if (new RegExp('(' + k + ')').test(fmt)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)));
}
}
return fmt;
};

3、替换字符串

String.prototype.replaceAll = function (src, dec) {
return this.replace(new RegExp(src, 'gm'), dec);
};

4、去掉前后空格

String.prototype.trim = function () {
return this.replace(/(^\s*)|(\s*$)/g, '');
};

5、生成随机整数

function getRandomInt(min,max){
return Math.floor(Math.random()*(max-min+1))+min;
}

6、生成验证码

function getValidCode(len){
let strSource = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'+'abcdefghijklmnopqrstuvwxyz'+'0123456789';
let res = '',idx = 0;
for(let i=0;i<len;i++){
idx = Math.floor(Math.random()*strSource.length);
res += strSource.substring(idx,idx+1);
}
return res;
}

7、生成GUID

function getGUID(){
let curtime = new Date().getTime();
if (window.performance && typeof window.performance.now === 'function') {
curtime += performance.now();
}
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
let rad = (curtime + Math.random() * 16) % 16 | 0;
curtime = Math.floor(curtime / 16);
return (c === 'x' ? rad : (rad & 0x3 | 0x8)).toString(16);
});
}

8、判断数据类型

function varType(input){
let tof = Object.prototype.toString.call(input);
return tof.match(/\[object (.*?)\]/)[1].toLowerCase();
}; ['Null','Undefined','Object','Array','String','Number','Boolean','Function','RegExp'].forEach(function(curVal){
varType['is' + curVal] = function(input){
return varType(input) === curVal.toLowerCase();
};
});

js 常用工具方法的更多相关文章

  1. js常用工具类.

    一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...

  2. jQuery常用工具方法

    前面的话 jQuery提供一些与元素无关的工具方法,不必选中元素,就可以直接使用这些方法.如果理解原生javascript的继承原理,那么就能理解工具方法的实质.它是定义在jQuery构造函数上的方法 ...

  3. Node.js 常用工具

    Node.js 常用工具 util 是一个Node.js 核心模块,提供常用函数的集合,用于弥补核心JavaScript 的功能 过于精简的不足. util.inherits util.inherit ...

  4. Node.js 常用工具util包

    Node.js 常用工具 util 是一个Node.js 核心模块,提供常用函数的集合,用于弥补核心JavaScript 的功能 过于精简的不足. util.isError(obj); util.is ...

  5. JavaScript常用工具方法

    JavaScript常用工具方法 1.日期格式化 2.将日期字符串转换为Date,字符串格式为(yyyy-mm-dd hh:mm:ss) 3.JS获取当天00:00:00时间和23:59:59的时间 ...

  6. JS常用校验方法(判断输入框是否为空,数字,电话,邮件,四舍五入等)

    JS常用校验方法: 1.判断输入框是否为空,为空时弹出提示框 2.关闭窗口 3.检查输入字符串是否为数字 4.强制把大写转换成小写 5.手机号码校验,长度为11位数字. 6.电子邮件校验 7.电话号码 ...

  7. JavaScript 深入学习及常用工具方法整理 ---- 01.浮点数

    在JavaScript中是不区分整数值和浮点数值的,其中所有的数字均用浮点数值表示.JavaScript采用IEEE 754标准(有兴趣可以浏览网络规范分类下的IEEE 754标准,需要原文件请在留言 ...

  8. 【js常用DOM方法】

    介绍几个js DOM的常用方法 获取元素节点 getElementById  getElementsByTagName  getElementsByClassName 先写一个简单的网页做测试: /* ...

  9. js常用工具

    1.反编译工具 .NET Reflector 2.js检查工具 ReSharper 8.0.14.856 官方原版+注册机     JScript Editor Extensions     JSEn ...

随机推荐

  1. Prism_简介(1)

    Prism 6 Introduction介绍 Initializing初始化 Managing-Dependencies管理依赖 Modules模块 Implementing-MVVM实时MVVM A ...

  2. 读取property配置的N种方式

    @Value注解 @Value("${ddd}") <!-- 加载配置属性文件 --> <context:property-placeholder ignore- ...

  3. Saltstack_实战指南01_系统规划

    1. 实战项目GitHub地址 之前<Saltstack_使用指南>详细讲解了saltstack的使用.那么从这节开始实战讲解,当然不会再像之前那样详细说明了.只是讲一些系统规划之类的信息 ...

  4. android binder 进程间通信机制1-binder 驱动程序

    以下内容只大概列个提纲,若要明白其中细节,还请看源码: 申明:本人菜鸟,希望得到大神指点一二,余心足已 binder 设备:/dev/binder binder 进程间通信涉及的四个角色: Clien ...

  5. echarts js报错 Cannot read property 'getAttribute' of null

    本文将为您描述如何解决 eharts.js报错 Uncaught TypeError: Cannot read property 'getAttribute' of null 的问题 根据报错信息查找 ...

  6. myeclipse使用

    安装一个myeclipse10或者2015 2014都可以 支持最高的JDK为7 myeclipse可以永久使用需要激活 有几步骤 myeclipse打开之后--windows--show view ...

  7. 新手springmvc web简单搭建过程-caidachun

    第一次做整了一天,中间各种报错,大佬肯定要嘲笑我了,但还是很有成就敢,现在只知道怎么装配,还不知道为什么,还需要学习.加油 1.新建动态web项目 2. 添加jar包,可以到网上下载,commons- ...

  8. 201871020225-牟星源 《面向对象程序设计(java)》第一周学习总结

    正文 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daiz ...

  9. 剑指Offer-36.数字在排序数组中出现的次数(C++/Java)

    题目: 统计一个数字在排序数组中出现的次数. 分析: 给定一个已经排好序的数组,统计一个数字在数组中出现的次数. 那么最先想到的可以遍历数组统计出现的次数,不过题目给了排序数组,那么一定是利用了排序这 ...

  10. 【2019.10.7 CCF-CSP-2019模拟赛 T1】树上查询(tree)(思维)

    思维 这道题应该算是一道思维题吧. 首先你要想到,既然这是一棵无根树,就要明智地选择根--以第一个黑点为根(不要像我一样习惯性以\(1\)号点为根,结果直到心态爆炸都没做出来). 想到这一点,这题就很 ...