自己封装的tools.js文件
/*
* 生成指定范围的随机整数
* @param lower 下限
* @param upper 上限
* @return 返回指定范围的随机整数,上/下限值均可取
*/
function random(lower, upper) {
return Math.floor(Math.random() * (upper - lower)) + lower;
}
/*
* 生成rgb随机颜色值
* @return 返回生成的rgb字符串:"rgb(33,44,55)"
*/
function randomColor() {
// 随机生成 rgb 十进制值
var r = random(0, 255),
g = random(0, 255),
b = random(0, 255);
// 串联字符串,并返回
return "rgb(" + r + "," + g + "," + b + ")";
}
/*
* 将 URL 中查询字符串转换为对象
* @param ul 待转换的URL字符串
*/
function parseQueryString(url) {
// 获取 ? 与 # 的索引
var start = url.indexOf("?"),
end = url.indexOf("#");
// 判断是否有 ?
if (start === -1)
// 不存在,则返回 null
return null;
// 存在 ?,则起始索引从?后一位置开始
start += 1;
// 判断是否有 #
if (end === -1)
// 不存在,则截取到字符串末尾
end = url.length;
// 获取查询字符串
var queryString = url.slice(start, end);
// 使用 & 符号将查询字符串分割
queryString = queryString.split("&");
var result = {}; // 保存解析后的对象
// 遍历迭代数组中每个元素
for (var i = 0, len = queryString.length; i < len; i++) {
// 将当前数组中遍历到的 "key=value" 以 = 分割
var parts = queryString[i].split("=");
result[parts.shift()] = parts.shift();
}
// 将解析报的对象返回
return result;
}
/*
* 将对象转换为查询字符串
* @param obj 对象
* @return 查询字符串 key=value&key=value&key=value
*/
function toQueryString(obj) {
// 定义变量保存转换结果
var result = [];
// 遍历迭代对象各属性
for (var attr in obj) {
result.push(attr + "=" + obj[attr]);
}
// 返回连接后的查询字符串
return result.join("&");
}
/*
* 格式化日期时间:yyyy-MM-dd HH:mm:ss
* @param datetime 待格式化日期时间对象
* @return 格式化后的字符串:yyyy-MM-dd HH:mm:ss
*/
function format(datetime) {
var year = datetime.getFullYear(),
month = ("0" + (datetime.getMonth() + 1)).slice(-2),
date = ("0" + datetime.getDate()).slice(-2),
hour = ("0" + datetime.getHours()).slice(-2),
min = ("0" + datetime.getMinutes()).slice(-2),
sec = ("0" + datetime.getSeconds()).slice(-2);
return year + "-" + month + "-" + date + " " + hour + ":" + min + ":" + sec;
}
更多内容请见原文,文章转载自:https://blog.csdn.net/weixin_44519496/article/details/118599400
自己封装的tools.js文件的更多相关文章
- 小程序请求接口统一封装到一个js文件中
在我们做小程序时,数据请求数据请求是避免不了的,然而我们用官方自带的请求方式,会给我们带来很多重复的工作,所以我就借鉴大神们的博客,写了一个简单的请求方式. 1.首先我们在utils中新建一个api. ...
- js封装,一个JS文件引用多个JS文件
(function() { //加载 varobj = {}; /** * 动态加载脚本函数 * @param url 要加载的脚本路径 * @param callback ...
- JS高级---案例贪吃蛇,把封装的函数移动到js文件中
案例贪吃蛇,把封装的函数移动到js文件中 <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- Node.js 文件上传 cli tools
Node.js 文件上传 cli tools byte stream 断点续传 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
- vue cli3.0 封装组件全局引入js文件并发布到npm
首先用 vue create创建一个项目 当前的项目目录是这样的: 首先需要创建一个 packages 目录,用来存放组件 然后将 src 目录改为 examples 用作示例 二.修改配置 启动项目 ...
- vue-cli3 将自己写的组件封装成可引入的js文件
一.调整项目结构 首先用 vue-cli 创建一个 default 项目 // 顺便安利一篇文章<Vue 爬坑之路(十二)—— vue-cli 3.x 搭建项目> 当前的项目目录是这样的: ...
- JS组件系列——封装自己的JS组件,你也可以
前言:之前分享了那么多bootstrap组件的使用经验,这篇博主打算研究下JS组件的扩展和封装,我们来感受下JQuery为我们提供$.Extend的神奇,看看我们怎么自定义自己的组件,比如我们想扩展一 ...
- JS组件系列——封装自己的JS组件
前言:之前分享了那么多bootstrap组件的使用经验,这篇博主打算研究下JS组件的扩展和封装,我们来感受下JQuery为我们提供$.Extend的神奇,看看我们怎么自定义自己的组件,比如我们想扩展一 ...
- html或者jsp页面引用jar包中的js文件
一,页面上引用jar包中的js文件的方法 使用java web框架AppFuse的时候发现,jquery.bootstrap等js框架都封装到jar包里面了.这些js文件通过一个wro4j的工具对其进 ...
随机推荐
- 帝国CMS灵动标签调用相关文章
标题包含关键字①.比较粗糙的匹配,可能不太精确:title like '%$navinfor[keyboard]%' ②.精确的匹配,比较消耗资源:title regexp '(^|,)$navinf ...
- Bootstarp框架用法
Bootstrap框架 Bootstrap框架 2.X 3.X 4.X # 推荐使用3.X版本 使用框架调整页面样式一般都是操作标签的class属性即可 bootstrap需要依赖于jQuery才能正 ...
- 【LeetCode】567. 字符串的排列
567. 字符串的排列 知识点:字符串:滑动窗口 题目描述 给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列.如果是,返回 true :否则,返回 false . 换句 ...
- Spring-Mybatis使用到的依赖及配置
日志(log4j) log4j.rootLogger=DEBUG,console,file log4j.appender.console = org.apache.log4j.ConsoleAppen ...
- JavaScript学习总结8-DOM
今天学习了DOM的增删改查 innerText可以用来修改文本的内容,但是无法识别标签,要修改标签样式使用innerHTML 删除节点的步骤:先获取父节点,在通过父节点删除子节点 注意:删除节点是一个 ...
- Blazor使用区域(Area)
在MVC中,我们经常使用区域(Area)来区分各个模块,比如后台我们可以写一个Admin的Area. 到了Blazor时代,已经不推荐这么做了,现在推荐的做法是通过Url来区分,比如Admin可以配置 ...
- Java第十四周作业
2.设计2个类,要求如下:(知识点:类的继承 方法的覆 盖) [必做题] 2.1 定义一个汽车类Vehicle, 2.1.1 属性包括:汽车品牌brand(String类型).颜色clr (Strin ...
- CSS简单的网页布局
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...
- XCTF练习题---MISC---就在其中
XCTF练习题---MISC---就在其中 flag:flag{haPPy_Use_0penSsI} 解题步骤: 1.观察题目,下载附件 2.拿到手以后发现是一个数据包格式,直接上Wireshark查 ...
- 题解0011:图书管理(哈希、vector)
信奥一本通--哈希 里的例题2 题目链接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1456 题目描述:两个命令,一个是进一本名字为s的图书,一个是 ...