首页 > 其他分享 >【Web】0基础学Web—随机颜色、数学对象、日期及方法、定时器、倒计时

【Web】0基础学Web—随机颜色、数学对象、日期及方法、定时器、倒计时

时间:2024-12-21 21:31:50浏览次数:11  
标签:Web 定时器 console log 倒计时 parseInt let date Math

0基础学Web—随机颜色、数学对象、日期及方法、定时器、倒计时

随机颜色

点击div时,随机改变div背景颜色

<body>
    <div class="wrapper" onclick="changebgColor()"></div>
    <script>
        //改变背景颜色
        function changebgColor() {
            //获取wrapper
            let _wrapper = document.querySelector('.wrapper')
            //修改背景颜色
            _wrapper.style.backgroundColor = randomColor()

        }
        function randomColor() {
            //rgb(0-255,0-255,0-255)
            let r = parseInt(Math.random() * 256)
            let g = parseInt(Math.random() * 256)
            let b = parseInt(Math.random() * 256)
            return `rgb(${r},${g},${b})`
        }
    </script>
</body>

数学对象

<script>
<script>
    console.log(Math.PI)  //3.141592653589793
    console.log(Math.abs(-1)) //1  绝对值
    console.log(Math.ceil(2.0001)) //3  向上取整
    console.log(Math.floor(2.999))  //2  向下取整
    console.log(Math.round(4.45))  //5  四舍五入取整
    console.log(Math.max(4, 8, 2)) //8   最大值
    console.log(Math.min(4, 8, 2))  //2   最小值
    console.log(Math.sqrt(9))  //3  开平方
    console.log(Math.pow(2, 3))  //8  幂次方
    console.log(Math.random())  //随机[0-1)小数
    console.log(parseInt(Math.random() * 11))  //随机[0-10]小数
    console.log(parseInt(Math.random() * 11) + 5)  //随机[5-15]小数
    console.log(parseInt(Math.random() * 19) + 8)  //随机[8-26]小数
    //随机[m,n] parseInt(Math.random()*(m-n+1))+m
    //保留位数
    let a = 2.235
    console.log(a.toFixed(1)) //'2.2'
</script>
</script>

日期及方法

<script>
let date1 = new Date()  //当前时间
console.log(date1)
let date = new Date('2023-6-8 15:20:12')  //自定义时间
console.log(date)  //Thu Jun 08 2023 15:20:12 GMT+0800
//  时间 => 格式化日期
//格式化当前时间
var fd = moment().format('YYYY-MM-DD hh:mm:ss'); // 输出例如 "2023-04-10"
console.log(fd)  //2024-12-04 11:04:52
//格式化自定义时间
var fd = moment('2023-06-08 15:20:12').format('YYYY-MM-DD hh:mm:ss'); // 输出例如 "2023-04-10"
console.log(fd,'+++++++++++')  //2023-06-08 03:20:12
function formatMilliseconds(ms) {
    // 创建一个Date对象
    let date = new Date(ms);
    // 获取年、月、日、时、分、秒
    let year = date.getFullYear();
    let month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要+1
    let day = String(date.getDate()).padStart(2, '0');
    let hours = String(date.getHours()).padStart(2, '0');
    let minutes = String(date.getMinutes()).padStart(2, '0');
    let seconds = String(date.getSeconds()).padStart(2, '0');
    // 格式化并返回字符串
    return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
// 示例用法
let milliseconds = 1633072800000; // 这是一个示例的毫秒数,代表某个具体的日期和时间
let formattedDate = formatMilliseconds(milliseconds);
console.log(formattedDate); // 输出:2021-10-01 00:00:00      


let date = new Date()
console.log(date.getFullYear()) //2024
console.log(date.getMonth()+1+'月')  //11  0-11
console.log(date.getDate())   //4
console.log(date.getDay())    //3 星期日为0
console.log(date.getHours())   //14点
console.log(date.getMinutes())   //15分
console.log(date.getSeconds()) //32秒
console.log(date.getMilliseconds()) //955毫秒
//1970-至今的秒数
console.log(date.getTime()) //1733292972998 秒 
console.log(date.toLocaleDateString()) //2024/12/4
console.log(date.toLocaleTimeString()) //14:17:24
console.log(date.toLocaleString()) //2024/12/4 14:18:08       
</script>

定时器

<body>
    <div class="wrapper"></div>
    <script>
        //计时器,间隔执行
        // id=setInterval('执行函数',间隔时间毫秒)
        let id = setInterval(() => {
            let date = new Date()
            let _wrapper = document.querySelector('.wrapper')
            //动态设置标签内容
            _wrapper.innerHTML = date.toLocaleString()

        }, 1000)

        console.log(id)  //1

        //定时器,设置执行的延迟时间
        let id2 = setTimeout(() => {
            console.log('你好')
        }, 2000)
        console.log(id2)



    </script>
</body>

倒计时

css

<style>
        button {
            width: 150px;
            height: 40px;
            font-size: 18px;
            text-align: center;
            border: none;
            background-color: orange;
            color: white;
            border-radius: 20px;
            box-shadow: 2px 2px 2px gray;
            font-family: 黑体;
            font-weight: 600;
        }

        .a {
            width: 150px;
            height: 40px;
            color: blue;
            display: none;
            text-align: center;
            line-height: 40px;
        }
    </style>

js

<body>
    <div class="wrapper">10</div>
    <div class="active"></div>
    <button onclick="setTimer()">发送验证码</button>
    <div class="a" onclick="setTimer()">重新发送</div>
    <script>
        const btn = document.querySelector('button')
        //距离双12倒计时
        let _active = document.querySelector('.active')
        let date = new Date('2024-12-12 00:00:00')
        function timer() {
            let s = date - new Date()
            //  console.log(s) //637657296毫秒
            let days = parseInt(s / 1000 / 60 / 60 / 24)
            let hours = parseInt(s / 1000 / 60 / 60) % 24
            let minutes = parseInt(s / 1000 / 60) % 60
            let seconds = parseInt(s / 1000) % 60
            s = `距离双12还有${days}天${hours}小时${minutes}分${seconds}秒`
            _active.innerHTML = s
        }

        // setInterval('timer()', 1000)




        let num = 3
        let setTimer = () => {
            let id = setInterval(() => {
                btn.innerHTML = num
                num--
                btn.disabled = true
                btn.style.backgroundColor = 'rgb(245, 210, 146)'
                document.querySelector('.a').style.display = 'block'
                if (num === -2) {
                    clearInterval(id)
                    btn.innerHTML = '发送验证码'
                    btn.disabled = false
                    btn.style.backgroundColor = 'orange'
                    document.querySelector('.a').style.display = 'none'
                    num = 3
                }
            }, 1000)
        }
        //倒计时
        // let _wrapper = document.querySelector('.wrapper')
        // let id = setInterval(function () {
        //     num--
        //     _wrapper.innerHTML = num
        //     //停止条件
        //     if (num == 0) {
        //         clearInterval(id)  //停止计时器
        //     }
        // }, 1000)

    </script>
</body>

标签:Web,定时器,console,log,倒计时,parseInt,let,date,Math
From: https://blog.csdn.net/2201_75539182/article/details/144402137

相关文章

  • 【Web】0基础学Web—函数、箭头函数、函数闭包、函数参数、js作用域、字符串
    0基础学Web—函数、箭头函数、函数闭包、函数参数、js作用域、字符串函数函数声明函数调用函数事件调用函数匿名函数立即执行函数箭头函数函数闭包函数参数js作用域字符串字符串创建字符串方法字符串拼接字符串截取去除字符串首尾空格遍历其他函数function函数名(......
  • javaweb练习分析——4
    对于单表的查询可能会有多种,其中较为简单的是查询所有、根据id查询、根据其他单一条件查询,但有时会遇到相较于前面的操作较为复杂的操作,就是多条件查询。需要根据前端页面输入的条件来查询。对比简单的查询操作第一个区别是用注解不在适用,要在mapper.xml文件中书写sql语句<sele......
  • javaweb练习分析——5
    在完成对单表的增删改查操作后,就要实现项目中的业务逻辑,比如登录操作、还有目前这个项目中的房产之间的买卖业务逻辑,需要不同角色之间共同完成功能,将多表联系起来。以顾客购买房产为例,第一步首先要将在售的房产呈现出来,之后就是顾客可以点击地址查看详细信息,然后顾客点击交易可以......
  • javaweb练习分析——3
    先实现简单的对各个单表之间的增删改查的操作就以增加数据为例,由于比较简单,就可以直接用注解的方式来实现在mapper文件中,书写sql语句@Insert("insertintohouseinfovalues(#{houseId},#{roomType},#{address},#{year},#{area},#{sales},#{status},#{agent},#{customer})")......
  • JetBrains WebStorm 2024 破解教程附资源(亲测可用)
    1、下载安装包WebStorm20242、安装教程1、双击安装,弹窗安装对话框  2、更改安装目录至D盘,点击下一步 3、 都进行勾选,点击下一步 4、默认,点击安装 5、安装过程中,等待安装完成,选择之后重启,点击完成 6、激活,打开随行下载的文件夹,找到激活工具,双击执行  ......
  • javaweb练习分析——2
    在进行完文件的配置之后,就要按照数据库封装bean,放在pojo层中,然后创建相应的mapper.xml文件(创建时要用/间隔)之后根据项目要求,搭建主界面。根据不同角色的功能,搭建各自的界面,以其中一个为例<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname=......
  • javaweb练习分析——1
    首先在写项目时首先要做的是创建一个web项目,配置好pom.xml文件,mybatis.xml文件,还有创建相应的结构比如pojo、mapper、service等等。xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion>......
  • webbroker调用axios.min.js
    <head><scriptsrc="axios.min.js"></script></head><body><p>实现前端调用后端的HTTP请求的方法:<br>https://www.cnblogs.com/hgdzjp/p/9438893.html</p><pid="demo22">aaa</p><scri......
  • ssm基于web甜品店点餐系统4nxfw--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景与意义随着信息技术的飞速发展,互联网已经成为人们日常生活的重要部分。在餐饮行业中,传统的点餐方式已经难以满足现代消费者的需求。为......
  • Linux 中检查 Apache Web Server (httpd) 正常运行时间的 4 种方法
    注:机翻,未校。4WaysToCheckUptimeofApacheWebServer(httpd)onLinuxNovember28,2019byMageshMaruthamuthuWeallknowaboutthepurposeofuptimecommandinLinux.我们都知道Linux中uptime命令的目的。ItisusedtochecktheuptimeoftheL......