实用js片段
算法
//加法 add(10,2) //12
function add(a, b) {
var c, d, e;
try {
c = a.toString().split(".")[1].length;
} catch (f) {
c = 0;
}
try {
d = b.toString().split(".")[1].length;
} catch (f) {
d = 0;
}
return e = Math.pow(10, Math.max(c, d)), (mul(a, e) + mul(b, e)) / e;
}
//减法 sub(10,2) //8
function sub(a, b) {
var c, d, e;
try {
c = a.toString().split(".")[1].length;
} catch (f) {
c = 0;
}
try {
d = b.toString().split(".")[1].length;
} catch (f) {
d = 0;
}
return e = Math.pow(10, Math.max(c, d)), (mul(a, e) - mul(b, e)) / e;
}
//乘法 mul(10,2) //20
function mul(a, b) {
var c = 0,
d = a.toString(),
e = b.toString();
try {
c += d.split(".")[1].length;
} catch (f) { }
try {
c += e.split(".")[1].length;
} catch (f) { }
return Number(d.replace(".", "")) * Number(e.replace(".", "")) / Math.pow(10, c);
}
//除法 div(10,2) //5
function div(a, b) {
var c, d, e = 0,
f = 0;
try {
e = a.toString().split(".")[1].length;
} catch (g) { }
try {
f = b.toString().split(".")[1].length;
} catch (g) { }
return c = Number(a.toString().replace(".", "")), d = Number(b.toString().replace(".", "")), mul(c / d, Math.pow(10, f - e));
}
验证
// 判断是否是整数
function isInt(num) {
var reg = new RegExp("^[0-9]*$");
return reg.test(num);
} // 判断是否是数字
function isNum(num) {
var reg = new RegExp("^(\-)?[0-9]+(\.[0-9]+)?$");
return reg.test(num);
} // 判断是否是手机号码
function isPhone(phone) {
var reg = new RegExp("^1[0-9]{10}$");
return reg.test(phone);
}
//只能输入有两位小数的正实数,多用于价格
function isFloat(num) {
var reg = new RegExp("^[0-9]+(\\.[0-9]{1,2})?$");
return reg.test(num);
}
//只能输入有1位小数的正实数,多用于打折
function isFloat1(num) {
var reg = new RegExp("^[0-9]+(\\.[0-9]{1})?$");
return reg.test(num);
}
获取当前日期
//获取当前时间年-月-日 getNowTime() //2017-09-23
function getNowTime() {
var date = new Date();
var seperator1 = "-";
var year = date.getFullYear();
var month = date.getMonth() + 1;
var strDate = date.getDate(); var currentdate = year + seperator1 + checkNum(month) + seperator1 + checkNum(strDate) return currentdate;
} function checkNum(n){
var num;
if (n>= 1 && n<= 9) {
num= "0" + n;
}
return num
}
jquery 请求
//通用get请求
function commonGet(url, success, complete) {
$.ajax({
url: url,
type: 'get',
success: function (resp) {
if (resp.code == 0) {
typeof success === "function" && success(resp);
} else {
console.log(resp);
layer.msg(resp.msg);
}
typeof complete === "function" && complete(resp);
},
error: function () {
layer.msg('系统错误,请重试!');
typeof complete === "function" && complete();
}
});
}
//通用post请求
function commonPost(url, data, success, complete) {
setTimeout(function () {
$(".loading").hide();
},500)
$(document).ajaxStart(function () {
// layer.load(1, { shade: [0.1,'#fff'] })//0.1透明度的白色背景
$(".loading").show();
})
$(document).ajaxSuccess(function () {
$(".loading").hide();
})
$.ajax({
url: url,
type: 'post',
data: data,
success: function (resp) {
if (resp.code == 0) {
typeof success === "function" && success(resp);
} else {
// console.log(resp);
$(".loading").hide();
layer.msg(resp.msg);
}
typeof complete === "function" && complete(resp);
},
error: function (resp) {
$(".loading").hide();
layer.msg('系统错误,请重试!');
typeof complete === "function" && complete();
}
});
}
地址参数方法
//http://www.huistd.com/?id=99&ttt=3&haha=33
// GetQueryString("haha")
//获取地址栏参数
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
} //changeUrlArg(url, 'haha', 33); // http://www.huistd.com/?id=99&ttt=3&haha=33
//修改地址栏参数
function changeUrlArg(url, arg, val) {
var pattern = arg + '=([^&]*)';
var replaceText = arg + '=' + val;
return url.match(pattern) ? url.replace(eval('/(' + arg + '=)([^&]*)/gi'), replaceText) : (url.match('[\?]') ? url + '&' + replaceText : url + '?' + replaceText);
} //获取字符串长度
function getByteLen(val) {
if (val == null || val == "undefined") return 0;
return val.length; }
js,form表单数据转化为json格式
//自定义函数处理queryParams的批量增加 jsonArr.serializeJsonObject()
$.fn.serializeJsonObject = function () {
var json = {};
var form = this.serializeArray();
$.each(form, function () {
if (json[this.name]) {
if (!json[this.name].push) {
json[this.name] = [json[this.name]];
}
json[this.name].push();
} else {
json[this.name] = this.value || "";
}
});
return json;
}
实用js片段的更多相关文章
- 回归 | js实用代码片段的封装与总结(持续更新中...)
上一次更博还是去年10月28号了,截至今天已经有整整4个月没有更新博客了,没更新博客不是代表不学了,期间我已经用vue做了两个项目,微信小程序做了一个项目,只是毕竟找到工作了,想偷偷懒,你懂的. ...
- 实用js代码大全
实用js代码大全 //过滤数字 <input type=text onkeypress="return event.keyCode>=48&&event.keyC ...
- 实用js+css多级树形展开效果导航菜单
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 广告等第三方应用嵌入到web页面方案 之 使用js片段
在自己的项目中嵌入过广告的朋友们可能都用过百度联盟, 只需要嵌入如下一段js代码片段, 就可以在自己的项目中嵌入广告, 来获得收益. <script type="text javasc ...
- 【jQuery】 实用 js
[jQuery] 实用 js 1. int 处理 parseInt(") // int 转换 isNaN(page) // 判断是否是int类型 2. string 处理 // C# str ...
- 实用JS系列——BOM常用对象
背景: 最近在着手项目的时候,意识到自己JS的欠缺.虽然看了不少JavaScript的视频,但真正项目中并不是经常遇到大且难的例子.所以JavaScript的基础还需要再打扎实,也就有了这一系列博客 ...
- [python实用代码片段]python获取当前时间的前一天,前一周,前一个月
python获取当前时间的前一天,前一周,前一个月. 实用python的datetime.timedelta方法,避免了有的月份是30和31等不同的情况. 获取前一个月的时间,方法实现:首先datet ...
- Android 实用代码片段
一些不常见确又很实用的代码块. 1.精确获取屏幕尺寸(例如:3.5.4.0.5.0寸屏幕) public static double getScreenPhysicalSize(Activity ct ...
- 实用JS大全
****************************************************************(一)常用元素,对象,事件,技巧 事件源对象 event.srcElem ...
随机推荐
- JavaScript中函数带与不带括号的区别
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js 柯里化、深拷贝、浅拷贝
curry const sum = (a, b, c, d) => a + b + c + d const curry = fn => (judge = (...args) => a ...
- 微软Visual Studio Code基本特征
Visual Studio Code它的核心功能还是作为一个代码编辑器.和其他的代码编辑器一样,VScode采取通用的UI和布局,浏览器在左边,显示所有的文件和文件夹,右边你打开的文件的编辑页面. 文 ...
- mpvue 微信小程序半屏弹框(half-screen-dialog)
<template> <div> <a @click="isShow">half-screen-dialog</a> <!-- ...
- smbsh - 允许用UNIX命令访问NT文件系统
总览 smbsh 描述 此程序是Samba套件的一部分. smbsh允许你用UNIX命令诸如ls,egrep和rcp等来访问NT文件系统.必须用动态链接的shell以便使smbsh工作正常. 从命令提 ...
- Spring-DI控制反转和IOC依赖注入
Spring-DI控制反转和IOC依赖注入 DI控制反转实例 IDEAJ自动导入Spring框架 创建UserDao.java接口 public interface UserDao { public ...
- 从__name__=='__main__'说到__builtin__
一.__name__ 我们在写好代码进行自测的时候一般会先写这样一行代码: # inter_method if __name__ == '__main__': 为什么呢,可能并不是所有人都考虑过,这个 ...
- Hibernate入门核心配置文件和orm元数据配置文件详解
框架是什么? 框架是用来提高开发效率的 封装了一些功能,我们需要使用这些功能时,调用即可,不用手动实现 所以框架可以理解为一个半成品的项目,只要懂得如何使用这些功能即可 Hibernate是完全面向对 ...
- JSP相关学习
动态页面技术(JSP/EL/JSTL) <!-- jsp的三种脚本方式 --> <% int i = 5; //这是单行注释 /*这是多行注释*/ %> <%=i%> ...
- 数组之间的比较应当用Arrays.equals()
被坑了,数组之间的比较不能用“==”,应当用Arrays.equals() 如果是原生数组(即数组中的值是几大基本数据类型之一的)之间的比较可以直接用,如果数组中的值不是原生的基本数据类型,那么再使用 ...