日期格式化

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. 20155233 2006-2007-2 《Java程序设计》第4周学习总结

    20155233 2006-2007-2 <Java程序设计>第4周学习总结 教材学习内容总结 第六章: 继承:子类继承父类,避免重复的行为定义. extends关键词:继承并扩充行为. ...

  2. combotree -下拉框树异步加载

    问题: 下拉树数据比较多时,全加载会产生页面延迟,需要实现异步加载 方案: 点击事件加载:先加载部分,点击节点时再展开并追加子节点 onBeforeExpand事件:在展开树前加载,感觉这种方式比较优 ...

  3. 优步UBER司机全国各地奖励政策汇总 (4月18日-4月24日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  4. tableView--iOS11适配和iPhoneX适配

    1.UIScrollView及其子类在IOS 11之前的版本UI显示完全正常,但是在IOS 11上面会显示奇葩的界面. (1)先看一下UITablevIew. 原本在VC里面的automaticall ...

  5. day 2 异常传递 ,抛出

    1.异常的传递 def test1(): print("---test1--") print(num) print('---test1 over---') def test2(): ...

  6. CF 959 E. Mahmoud and Ehab and the xor-MST

    E. Mahmoud and Ehab and the xor-MST https://codeforces.com/contest/959/problem/E 分析: 每个点x应该和x ^ lowb ...

  7. Linux安装gitlab

    一.GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.安装方法是参考GitLab在GitHub上的Wiki页面. 二.我相信使用过git的开 ...

  8. avaweb(三十二)——JDBC学习入门

    一.JDBC相关概念介绍 1.1.数据库驱动 这里的驱动的概念和平时听到的那种驱动的概念是一样的,比如平时购买的声卡,网卡直接插到计算机上面是不能用的,必须要安装相应的驱动程序之后才能够使用声卡和网卡 ...

  9. jenkins 入门教程

    jenkins是一个广泛用于持续构建的可视化web工具,持续构建说得更直白点,就是各种项目的"自动化"编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:java, ...

  10. MantisBT导出Excel文件名显示中文的修改方法

    我安装的是 mantisbt-2.15.0. 在“查看问题”页面导出Excel文件后,其文件名虽然是我选择的项目名称,但是,若项目名称中有中文,这就是用%加编码显示. 解决方法是: 在  <Ma ...