日期格式化

function formatDateTime(timeStamp) {
var date = new Date();
date.setTime(timeStamp);
var y = date.getFullYear();
var m = date.getMonth() + 1;
m = m < 10 ? ('0' + m) : m;
var d = date.getDate();
d = d < 10 ? ('0' + d) : d;
var h = date.getHours();
h = h < 10 ? ('0' + h) : h;
var minute = date.getMinutes();
var second = date.getSeconds();
minute = minute < 10 ? ('0' + minute) : minute;
second = second < 10 ? ('0' + second) : second;
// return y + '-' + m + '-' + d + ' ' + h + ':' + minute + ':' + second;
return y + '-' + m + '-' + d;
}
formatDateTime("1592659874256")  

距离格式化

convertDistanceStr = function (distance) {
if (!distance) {
return "";
} else if (distance < 1000) {
return distance + "m"
} else if (distance >= 1000 && distance < 100000) {
return (distance / 1000.0).toFixed(1) + "km"
} else if (distance > 100000) {
return (distance / 1000.0).toFixed(0) + "km"
} else {
return "";
}
};

格式验证

checkStr (str, type) {
switch (type) {
case 'phone': //手机号码
return /^1[3|4|5|7|8][0-9]{9}$/.test(str);
case 'tel': //座机
return /^(0\d{2,3}-\d{7,8})(-\d{1,4})?$/.test(str);
case 'card': //身份证
return /^\d{15}|\d{18}$/.test(str);
case 'pwd': //密码以字母开头,长度在6~18之间,只能包含字母、数字和下划线
return /^[a-zA-Z]\w{5,17}$/.test(str)
case 'postal': //邮政编码
return /[1-9]\d{5}(?!\d)/.test(str);
case 'QQ': //QQ号
return /^[1-9][0-9]{4,9}$/.test(str);
case 'email': //邮箱
return /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/.test(str);
case 'money': //金额(小数点2位)
return /^\d*(?:\.\d{0,2})?$/.test(str);
case 'URL': //网址
return /(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?/.test(str)
case 'IP': //IP
return /((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))/.test(str);
case 'date': //日期时间
return /^(\d{4})\-(\d{2})\-(\d{2}) (\d{2})(?:\:\d{2}|:(\d{2}):(\d{2}))$/.test(str) || /^(\d{4})\-(\d{2})\-(\d{2})$/.test(str)
case 'number': //数字
return /^[0-9]$/.test(str);
case 'english': //英文
return /^[a-zA-Z]+$/.test(str);
case 'chinese': //中文
return /^[\u4E00-\u9FA5]+$/.test(str);
case 'lower': //小写
return /^[a-z]+$/.test(str);
case 'upper': //大写
return /^[A-Z]+$/.test(str);
case 'HTML': //HTML标记
return /<("[^"]*"|'[^']*'|[^'">])*>/.test(str);
default:
return true;
}
}

  读取url参数

getUrlParam = function (name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) {
return decodeURIComponent(r[2]);
}
return "";
};

  读取全部url参数

getUrlParams = function (url) {
var params = {};
var search = url.search;
if (search) {
while (search.indexOf("?") == 0) {
search = search.substr(1);
}
var arr = search.split("&");
for (var i = 0; i < arr.length; i++) {
var kv = arr[i].split("=");
if (kv.length >= 2) {
params[kv[0]] = decodeURIComponent(kv[1]);
}
}
}
return params;
};

  初始化评分星星

<span class="score-stars" data-value=""></span>
initScoreStars = function () {
$(".score-stars").each(function (index, item) {
var value = parseFloat($(item).attr("data-value"));
var stars = "";
for (var i = 0; i < 5; i++) {
if (value - i >= 0.9) {
stars += "<i class='iconfont icon-star'></i>";
} else if (value - i >= 0.1) {
stars += "<i class='iconfont icon-starhalf'></i>";
} else {
stars += "<i class='iconfont icon-star muted'></i>";
}
}
$(item).html(stars);
});
};

  判断是否是pc端

isPC () { //是否为PC端
var userAgentInfo = navigator.userAgent;
var Agents = ["Android", "iPhone",
"SymbianOS", "Windows Phone",
"iPad", "iPod"];
var flag = true;
for (var v = 0; v < Agents.length; v++) {
if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false;
break;
}
}
return flag;
}

  判断是否为微信端

isWXBrowser = function () {
return navigator.userAgent.toLowerCase().indexOf("micromessenger") >= 0;
}

  微信支付签名时间戳,签名随机串

var timestamp = Math.round(new Date().getTime() / 1000).toString();//时间戳
var nonceStr = Math.round(Math.random() * 100000000).toString();随机串

  http请求

app.getJSON = function (url, data, successFunc, errorFunc) {
app.request("get", url, data, successFunc, errorFunc);
} app.delete = function (url, data, successFunc, errorFunc) {
app.request("delete", url, data, successFunc, errorFunc);
} // 提交数据
app.post = function (url, data, successFunc, errorFunc) {
app.request("post", url, data, successFunc, errorFunc);
} app.put = function (url, data, successFunc, errorFunc) {
app.request("put", url, data, successFunc, errorFunc);
} app.request = function (method, url, data, successFunc, errorFunc) {
if (method.toLowerCase() == "post" || method.toLowerCase() == "put") {
if (data && typeof data != "string") {
data = JSON.stringify(data);
} else if (!data) {
data = "";
}
} $.ajax({
type: method,
dataType: "json",
url: url,
data: data,
contentType: "application/json",
beforeSend: function (request) {
request.setRequestHeader("appKey", conf.appKey);
},
success: function (res) {
if (res.status == "9901") {
var baseUrl;
if(window.location.href.toString().indexOf("/new/")>0){
baseUrl=conf.newWebBaseUrl;
}
else if(window.location.href.toString().indexOf("/newStore/")>0){
baseUrl=conf.newStoreBaseUrl;
}
else {
baseUrl=conf.webBaseUrl;
}
} else if (typeof successFunc == "function") {
successFunc(res);
}
},
error: function () {
if (typeof errorFunc == "function") {
errorFunc();
}
}
});
} 用法
app.getJSON(conf.apiBaseUrl + "/users/updAutoRebateMerchant", {
merchantId:merchantId
}, function (res) {
if (res.status == "0000") {
//成功
} else if (res.message) {
mui.alert(res.message);
}
});

  

JavaScript常用方法(工具类的封装)的更多相关文章

  1. iOS开发--QQ音乐练习,旋转动画的实现,音乐工具类的封装,定时器的使用技巧,SliderBar的事件处理

    一.旋转动画的实现 二.音乐工具类的封装 -- 返回所有歌曲,返回当前播放歌曲,设置当前播放歌曲,返回下一首歌曲,返回上一首歌曲方法的实现 头文件 .m文件 #import "ChaosMu ...

  2. JavaScript时间工具类

    /** * JavaScript日期工具类 * @author ZhangLp */ /** * 获取当前月的第一天 */ function getCurrentMonthFirst(){ var d ...

  3. javascript常用工具类整理(copy)

    JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串 return Object.prototype.to ...

  4. vue项目工具文件utils.js javascript常用工具类,javascript常用工具类,util.js

    vue项目工具文件utils.js :https://blog.csdn.net/Ajaxguan/article/details/79924249 javascript常用工具类,util.js : ...

  5. swift项目第十天:网络请求工具类的封装

    import UIKit /* 必须先导入头文件:import AFNetworking */ import AFNetworking //MARK:-0:定义枚举:以枚举定义请求网络的get和pos ...

  6. jwt工具类的封装

    第一步先引入jar: <dependency> <groupId>com.nimbusds</groupId> <artifactId>nimbus-j ...

  7. JDBC工具类—如何封装JDBC

    “获得数据库连接”操作,将在以后的增删改查所有功能中都存在,可以封装工具类JDBCUtils.提供获取连接对象的方法,从而达到代码的重复利用. 该工具类提供方法:public static Conne ...

  8. jdbc工具类的封装,以及表单验证数据提交后台

    在之前已经写过了jdbc的工具类,不过最近学习了新的方法,所以在这里重新写一遍,为后面的javaEE做铺垫: 首先我们要了解javaEE项目中,文件构成,新建一个javaEE项目,在项目中,有一个we ...

  9. DAO工具类的封装源码

    详细源码见下表,绝对原创,转载请注明出处! package com.ydj.util; import java.sql.Connection; import java.sql.PreparedStat ...

随机推荐

  1. 20155231 2016-2017-2 《Java程序设计》第3周学习总结

    20155231 2016-2017-2 <Java程序设计>第3周学习总结 教材学习内容总结 学习目标 区分基本类型与类类型 理解对象的生成与引用的关系 掌握String类和数组 理解封 ...

  2. #20155327 2016-2017-2 《Java程序设计》第三周学习总结

    20155327 2016-2017-2 <Java程序设计>第三周学习总结 教材学习内容总结 一.三种重要的数字表示 无符号:编码基于传统的二进制表示法,表示大于或者等于零的数字. 补码 ...

  3. I/O: std::ios_base::openmode

    I/O: std::ios_base::openmode std::ios_base::openmode std::ios_base::in:  打开文件进行读操作,即读取文件中的数据 如果指定路径中 ...

  4. EF中一对多的自反关系设置

            对于一般的目录树,通常就是一对多的自反关系,一般会有一个PID,引用于这个ID,实体类代码类似于下: public partial class Catalog { public Cat ...

  5. python进程-进阶

    进程同步(multiprocessing.Lock(锁机制).multiprocessing.Semaphore(信号量机制).multiprocessing.Event(事件机制)) 在计算机中,有 ...

  6. [转]git学习------>git-rev-parse命令初识

    git学习------>git-rev-parse命令初识 2017年06月13日 10:04:13 阅读数:2172 一.准备工作 第一步:在d盘git test目录下,新建工作区根目录dem ...

  7. Google Chrome插件分享

    前言 浏览器是大家日常使用最多的工具之一,对于程序员来说,Google Chrome浏览器当然是大家优选的最爱之一.面对Chrome丰富的插件真的是爱不释手,如何把自己的Chrome调教成自己心仪的样 ...

  8. Teaching Machines to Understand Us 让机器理解我们 之一 引言

    Teaching Machines to Understand Us   By Tom Simonite  MIT Technology Review Vol.118 No.5 2015 让机器理解我 ...

  9. Debian 给非 ROOT 用户添加 sudoer 权限

    问题描述 从官方镜像安装的 Debian 9 (Stretch)比较纯净,但因此需要自己安装.配置许多常用的 Linux 应用,这里就需要 sudo (super user do)临时获取 root ...

  10. leetcode个人题解——#43 Multiply Strings

    思路:高精度乘法就可以了. 有两个错误以前没在意,1.成员属性定义时候不能进行初始化, vector<); 这样隐性调用了函数进行初始化的形式特别要注意,也是错误的: 2.容器类只有分配了空间时 ...