前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自己封装的tools.js文件

自己封装的tools.js文件

作者头像
马克社区
发布2022-04-18 20:56:53
8300
发布2022-04-18 20:56:53
举报
文章被收录于专栏:高端IT高端IT
代码语言:javascript
复制
/*
 * 生成指定范围的随机整数
 * @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

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档