//格式化日期
function dateFtt(fmt, date) {
var o = {
"M+": date.getMonth() + 1, //月份
"d+": date.getDate(), //日
"h+": date.getHours(), //小时
"m+": date.getMinutes(), //分
"s+": date.getSeconds(), //秒
"q+": Math.floor((date.getMonth() + 3) / 3), //季度
S: date.getMilliseconds(), //毫秒
};
if (/(y+)/.test(fmt))
fmt = fmt.replace(
RegExp.$1,
(date.getFullYear() + "").substr(4 - RegExp.$1.length)
);
for (var 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;
}
//创建时间格式化显示
function formateDate() {
var crtTime = new Date(); //当前时间
// return dateFtt("yyyy-MM-dd hh:mm:ss", crtTime);
// return dateFtt("yyyy年MM月dd日 hh:mm:ss", crtTime);
// return dateFtt("yyyy/MM/dd hh:mm:ss", crtTime);
return dateFtt("yyyy年MM月dd日 hh:mm:ss", crtTime);
}
// 随机颜色
function suijise() {
function rundon(a, b) {
var d = Math.max(a, b)
var x = Math.min(a, b)
return Math.floor(Math.random() * (d - x) + x)
}
var r = rundon(0, 255)
var g = rundon(0, 255)
var b = rundon(0, 255)
return `rgb(${r},${g},${b})`
}
//兼容性写法,获取滚动距离 0-> false
function getScrollTop() {
if (document.documentElement.scrollTop) {
return document.documentElement.scrollTop
} else {
return document.body.scrollTop
}
// return document.body.scrollTop || document.documentElement.scrollTop
}
// 生成一个任意范围内的随机整数
function getRandomNum(a, b) {
if (a > b) {
return parseInt(Math.random() * (a - b + 1)) + b
}
return parseInt(Math.random() * (b - a + 1)) + a
}
//ajax封装
//封装ajax工具函数
//调用方式
// ajax({
// method: 'get',
// url: 'http://10.7.176.87:8088/api/list',
// data: {
// uesrname: 'admin',
// password: 123
// },
// success: function (data) {
// // 处理成功 data为返回的数据
// },
// error: function (error) {
// //处理失败
// }
// })
function ajax(options) {
// 创建XMLHttpRequest对象
const xhr = new window.XMLHttpRequest
// 处理参数,将对象参数转成名称值对形式
// options.data //转成username ='admin'
let parame = formateParame(options.data)
//判断请求方式
let method = options.method.toUpperCase()
if (method == 'GET') {
xhr.open(method, options.url + '?' + parame)
xhr.send()
} else if (method == 'POST') {
xhr.open(method, options.url)//建立链接
xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded')
xhr.send(parame)//发送请求
}
xhr.onreadystatechange = function () {
//4.1判断响应是否完成
if (xhr.readyState == 4) {
//4.2是否成功响应
if (xhr.status == 200) {
let result = xhr.responseText
let data = JSON.parse(result)
//调用处理成功的回调函数success
options.success(data)
} else {
options.error(xhr)
}
}
}
}
//ajax拼接请求的参数
function formateParame(obj) {
let arr = []
for (let key in obj) {
let itme = `${key}=${obj[key]}`
arr.push(itme)
}
let str = arr.join('&')
return str
}
//获取url地址栏的数据
function splitStrToObject(url) {
var s = url.indexOf('?')
var xin = url.substring(s + 1)
xin = xin.split('&')
var obj = {}
xin.forEach(function (zhi) {
var k = zhi.split('=')
obj[k[0]] = k[1]
});
return obj
}
常用方法函数封装
于 2021-12-22 20:40:01 首次发布