自学内容网 自学内容网

一些函数的封装

一、随机整数

/*
    * 生成两个整数之间的随机整数,并且要包含这两个整数
    */
    function getRandom(min, max) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    }

二、标签过滤

function setText(val) {
  let msg = val.replace(/</g, "&lt;").replace(/>/g, "&gt;"); //执行替换成空字符
  msg = msg.replace(/\s/g, ""); //去掉所有的空格(中文空格、英文空格都会被替换)
  //去掉所有的换行符

  return msg; //获文本文字内容的前100个字符
}

三、截取网址

function GetRequest() {
  var url = location.search; //获取url中"?"符后的字串
  if (url.indexOf("?") != -1) {
    //判断是否有参数
    var str = url.substr(1);
    //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串
    var strs = str.split("=");
    //用等号进行分隔
    //(因为知道只有一个参数 所以直接用等号进分隔
    //如果有多个参数 要用&号分隔 再用等号进行分隔)
    return { name: decodeURI(strs[0]), arg: decodeURI(strs[1]) };
    //直接弹出第一个参数 (如果有多个参数 还要进行循环的)
  }
}

四、时间

1.时间的格式化

console.log(formatDate());

/*
    方法:日期格式化。
    格式要求:今年是:2020年02月02日 08:57:09 星期日
*/
function formatDate() {
    var date = new Date();

    var year = date.getFullYear(); // 年
    var month = date.getMonth() + 1; // 月
    var day = date.getDate(); // 日

    var week = date.getDay(); // 星期几
    var weekArr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];

    var hour = date.getHours(); // 时
    hour = hour < 10 ? '0' + hour : hour; // 如果只有一位,则前面补零

    var minute = date.getMinutes(); // 分
    minute = minute < 10 ? '0' + minute : minute; // 如果只有一位,则前面补零

    var second = date.getSeconds(); // 秒
    second = second < 10 ? '0' + second : second; // 如果只有一位,则前面补零

    var result = '今天是:' + year + '年' + month + '月' + day + '日 ' + hour + ':' + minute + ':' + second + ' ' + weekArr[week];

    return result;
}

2.天数的倒计时

<!DOCTYPE html>
<html>
  <head lang="en">
    <meta charset="UTF-8" />
    <title></title>
    <style>
      div {
        width: 1210px;
        margin: 200px auto;
        color: red;
        text-align: center;
        font: 600 30px/30px "simsun";
      }
    </style>
  </head>
  <body>
    <div></div>

    <script>
      var div = document.getElementsByTagName("div")[0];

      var timer = setInterval(() => {
        countDown("2024/10/03 11:20:00");
      }, 1);

      function countDown(myTime) {
        var nowTime = new Date();
        var future = new Date(myTime);
        var timeSum = future.getTime() - nowTime.getTime(); //获取时间差:发布会时间减去此刻的毫秒值

        var day = parseInt(timeSum / 1000 / 60 / 60 / 24); // 天
        var hour = parseInt((timeSum / 1000 / 60 / 60) % 24); // 时
        var minu = parseInt((timeSum / 1000 / 60) % 60); // 分
        var sec = parseInt((timeSum / 1000) % 60); // 秒
        var millsec = parseInt(timeSum % 1000); // 毫秒

        //细节处理:所有的时间小于10的时候,在前面自动补0,毫秒值要补双0(比如如,把 8 秒改成 08 秒)
        day = day < 10 ? "0" + day : day; //day小于10吗?如果小于,就补0;如果不小于,就是day本身
        hour = hour < 10 ? "0" + hour : hour;
        minu = minu < 10 ? "0" + minu : minu;
        sec = sec < 10 ? "0" + sec : sec;
        if (millsec < 10) {
          millsec = "00" + millsec;
        } else if (millsec < 100) {
          millsec = "0" + millsec;
        }

        // 兜底处理
        if (timeSum < 0) {
          div.innerHTML = "距离苹果发布会还有00天00小时00分00秒000毫秒";
          clearInterval(timer);
          return;
        }

        // 前端要显示的文案
        div.innerHTML =
          "距离苹果发布会还有" +
          day +
          "天" +
          hour +
          "小时" +
          minu +
          "分" +
          sec +
          "秒" +
          millsec +
          "毫秒";
      }
    </script>
  </body>
</html>

五、使用js库获取时间

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script src="https://cdn.bootcdn.net/ajax/libs/moment.js/2.26.0/moment.min.js"></script>
    <script>
      // 按照指定的格式,格式化当前时间
      console.log(moment().format("YYYY-MM-DD HH:mm:ss")); // 打印结果举例:2020-06-12 16:38:38
      console.log(typeof moment().format("YYYY-MM-DD HH:mm:ss")); // 打印结果:string

      // 按照指定的格式,格式化指定的时间
      console.log(moment("2020/06/12 18:01:59").format("YYYY-MM-DD HH:mm:ss")); // 打印结果:2020-06-12 18:01:59

      // 按照指定的格式,获取七天后的时间
      console.log(moment().add(7, "days").format("YYYY-MM-DD hh:mm:ss")); // 打印结果举例:2020-06-19 04:43:56
    </script>
  </body>
</html>

原文地址:https://blog.csdn.net/HBR666_/article/details/142435157

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!