动态时间【JavaScript】

news2024/12/28 22:34:54

这个代码实现了一个动态显示当前日期和时间的功能。具体来说,它会每秒更新一次时间并在页面上显示出来。

实现效果:

代码:

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>动态时间</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            margin-top: 50px;
        }
        #time {
            font-size: 24px;
            margin-top: 20px;
        }
    </style>
</head>
<body>
    <h1>当前日期和时间</h1>
    <div id="time"></div>

    <script>
        function updateTime() {
            const now = new Date();
            const year = now.getFullYear();
            const month = String(now.getMonth() + 1).padStart(2, '0'); // 月份从0开始
            const day = String(now.getDate()).padStart(2, '0');
            const hours = String(now.getHours()).padStart(2, '0');
            const minutes = String(now.getMinutes()).padStart(2, '0');
            const seconds = String(now.getSeconds()).padStart(2, '0');

            const daysOfWeek = ['日', '一', '二', '三', '四', '五', '六'];
            const dayOfWeek = daysOfWeek[now.getDay()];

            const formattedTime = `${year}年${month}月${day}日 星期${dayOfWeek} ${hours}:${minutes}:${seconds}`;
            document.getElementById('time').innerText = formattedTime;
        }

        // 每秒更新一次时间
        setInterval(updateTime, 1000);

        // 页面加载时立即显示时间
        updateTime();
    </script>
</body>
</html>

部分代码解析:

function updateTime() {
				const now = new Date();
				const year = now.getFullYear();
				const month = String(now.getMonth() + 1).padStart(2, '0'); // 月份从0开始
				const day = String(now.getDate()).padStart(2, '0');
				const hours = String(now.getHours()).padStart(2, '0');
				const minutes = String(now.getMinutes()).padStart(2, '0');
				const seconds = String(now.getSeconds()).padStart(2, '0');

				const daysOfWeek = ['日', '一', '二', '三', '四', '五', '六'];
				const dayOfWeek = daysOfWeek[now.getDay()];

				const formattedTime = `${year}年${month}月${day}日 星期${dayOfWeek} ${hours}:${minutes}:${seconds}`;
				document.getElementById('time').innerText = formattedTime;
			}

			// 每秒更新一次时间
			setInterval(updateTime, 1000);

			// 页面加载时立即显示时间
			updateTime();
  1. 函数定义

    function updateTime() { ... }
    

    定义了一个名为 updateTime 的函数,用于获取当前时间并格式化为特定的字符串。

  2. 获取当前时间

    const now = new Date();
    

    使用 Date 对象获取当前的日期和时间。

  3. 提取日期和时间信息

    const year = now.getFullYear();
    const month = String(now.getMonth() + 1).padStart(2, '0');
    const day = String(now.getDate()).padStart(2, '0');
    const hours = String(now.getHours()).padStart(2, '0');
    const minutes = String(now.getMinutes()).padStart(2, '0');
    const seconds = String(now.getSeconds()).padStart(2, '0');
    
    • getFullYear():获取完整的年份(如2024)。
    • getMonth():获取当前月份(0-11),所以加1使其范围变为1-12。
    • getDate():获取当前日期(1-31)。
    • getHours()getMinutes()getSeconds():分别获取小时、分钟和秒。
    • 使用 padStart(2, '0') 确保月份、日期、小时、分钟和秒都以两位数字显示(例如,09而不是9)。
  4. 获取星期几

    const daysOfWeek = ['日', '一', '二', '三', '四', '五', '六'];
    const dayOfWeek = daysOfWeek[now.getDay()];
    
    • getDay():获取当前是星期几(0-6,0代表星期日)。
    • 用一个数组 daysOfWeek 将数字转换为中文星期几的表示。
  5. 格式化时间字符串

    const formattedTime = `${year}年${month}月${day}日 星期${dayOfWeek} ${hours}:${minutes}:${seconds}`;
    

    使用模板字符串将所有信息组合成一个格式化的字符串。

  6. 更新网页内容

    document.getElementById('time').innerText = formattedTime;
    

    找到网页中ID为 time 的元素,并将格式化后的时间字符串赋值给它,使其显示在页面上。

  7. 定时更新

    setInterval(updateTime, 1000);
    

    每1000毫秒(即每秒)调用 updateTime 函数,实现实时更新。

  8. 页面加载时初始化

    updateTime();
    

    页面加载时立即调用一次 updateTime,以确保在页面加载时就显示当前时间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2158959.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GUI编程之MATLAB入门详解(01)

⛄前言 图形用户界面的设计是MATLAB的核心应用之一。当用户与计算机之间或用户与计算机程序之间进行交互操作时&#xff0c;舒服高效的用户接口功能则会对用户产生极大的吸引力。图形用户界面&#xff08;GUI&#xff09;则通过窗口、图标、按钮、菜单、文本等图形对象构成用户…

美业SaaS收银系统如何收银?博弈美业实操/美业门店管理系统源码

1.打开博弈美业APP 2.工作台上方的【收银台】、【扫码核销】、【密码核销】均可完成收银 3.【收银台】可直接选择商品/服务/课程&#xff0c;再选择客户后提交订单收款 4.【扫码核销】【密码核销】可直接扫描二维码、输入核销码进行收银

大模型日报|7 篇必读的大模型论文

大家好&#xff0c;今日必读的大模型论文来啦&#xff01; 1.中科大团队提出人像视频编辑方法 PortraitGen 中国科学技术大学团队提出了 PortraitGen&#xff0c;这是一种功能强大的人像视频编辑方法&#xff0c;它能通过多模态提示实现一致且富有表现力的风格化。 传统的人…

SLAM面经1(百度)

百度面经 百度共三面,如果面试效果俱佳,会增加一个hr面。前二面主要是技术面,分为在线coding+代码知识+专业知识+工程能力。第三面是主管面,偏向于管理方面,和hr面相似。 一面 1)在线coding 在线coding的考试内容为下面力扣的变种。 2)专业面 (1)VINS-FUSION与ORB…

鲲鹏计算这五年:硬生态基本盘稳住,才能放手进击软生态

文 | 智能相对论 作者 | 叶远风 数智化深入发展、新质生产力成为主旋律的当下&#xff0c;本土计算产业的发展被寄予越来越多的关注和期待。自2019年开启以来&#xff0c;鲲鹏计算产业生态已经整整走过5个年头。 因此&#xff0c;今年华为全联接大会的鲲鹏之夜&#xff0c;在…

【网络安全】依赖混淆漏洞实现RCE

未经许可&#xff0c;不得转载。 文章目录 正文 依赖混淆是一种供应链攻击漏洞&#xff0c;发生在企业的内部依赖包错误地从公共库&#xff08;如npm&#xff09;下载&#xff0c;而不是从其私有注册表下载。攻击者可以在公共注册表中上传一个与公司内部包同名的恶意包&#xf…

java基础(2)方法的使用

目录 1.前言 2.正文 2.1方法的定义 2.2方法的调用过程 2.3方法的实参与形参 2.3.1形参 2.3.2实参 2.3.3参数传递 2.4方法的重载 3.小结 1.前言 哈喽大家好啊&#xff0c;今天博主继续带领大家学习java的基本语法&#xff0c;java的基础语法部分打算用六到七篇博文完…

关于uniapp wifi调用走过的坑

1. uniapp老脚手架与uni-wif带来的兼容性问题 且几乎找不到解决方法 2. uni-wif需要插件市场安装 3.还有一种可以使用导入安卓类的方式&#xff0c;可以正常获取到已经连接ssid&#xff08;wifi名称&#xff09;&#xff0c;也可以获取到wifi列表 &#xff0c; 但ScanResul…

p18 docker镜像原理之联合文件系统,p19 docker镜像分层的理解

镜像是什么 镜像其实就是一种轻量级的&#xff0c;可执行的一种软件包&#xff0c;用来打包基于环境开发的软件&#xff0c;里面可以包括代码&#xff0c;环境&#xff0c;数据库&#xff0c;配置文件等信息 如何得到镜像&#xff1f; 可以从镜像仓库下载比方说dockerhub 比…

道路车辆功能安全 ISO 26262标准(2)—功能安全管理

写在前面 本系列文章主要讲解道路车辆功能安全ISO26262标准的相关知识&#xff0c;希望能帮助更多的同学认识和了解功能安全标准。 若有相关问题&#xff0c;欢迎评论沟通&#xff0c;共同进步。(*^▽^*) 1. 道路车辆功能安全ISO 26262标准 2. ISO 26262-2 功能安全管理 IS…

基于SpringBoot+Vue的旅游攻略平台管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码 精品专栏&#xff1a;Java精选实战项目…

论文不会写快来看!分享4款ai改写论文软件

在当今学术研究和写作领域&#xff0c;AI论文改写工具已经成为不可或缺的助手。这些工具不仅能够帮助研究人员提高写作效率&#xff0c;还能确保论文的质量和原创性。以下是四款值得推荐的AI改写论文软件&#xff0c;其中特别推荐千笔-AIPassPaper。 千笔-AIPassPaper 传送门&…

设计模式之命令模式:从原理到实战,深入解析及源码应用

命令模式 什么是命令模式&#xff1f; 命令模式&#xff08;Command Pattern&#xff09;是一种行为设计模式&#xff0c;它将一个请求封装为一个对象&#xff0c;从而允许使用不同的请求、队列或者日志来参数化对象&#xff0c;并支持可撤销的操作。命令模式的核心思想是将命令…

STM32在Keil5中利用Jansson库处理和组装JSON数据【详细版】

在Keil5中利用Jansson库处理和组装JSON数据 下载Keil.Jansson.1.0.0.pack https://keilpack.azureedge.net/pack/Keil.Jansson.1.0.0.packhttps://keilpack.azureedge.net/pack/Keil.Jansson.1.0.0.pack 下载完成后直接安装到keil5中即可 选择Jansson库的理由&#xff1a;轻量…

医学数据分析实训 项目三 关联规则分析预备项目---购物车分析

文章目录 1 预备项目关联规则分析实践———购物车分析1 产生频繁集2 产生关联规则 1 预备项目 关联规则分析实践———购物车分析 import warnings import numpy as np import pandas as pd from mlxtend.frequent_patterns import apriori from mlxtend.frequent_patterns …

【LVIO-SLAM】SVD分解,最小二乘与EKF

【LVIO-SLAM】SVD分解与应用推导 1.1 线性最小而二乘1.2 SVD分解算法流程问题描述算法流程算法复杂度总结 1.3 非线性最小二乘1.4 EKF融合 KF/ EKF推导过程 1.1 线性最小而二乘 针对A是任意矩阵的话使用SVD分解求解&#xff0c;其中U是AA转置的特征值&#xff0c;V是AA转置A的特…

iPhone 16 还剩一个月,微软开源新技术让手机以 6 倍速度提前跑上大模型

作者 | 微软亚洲研究院 责编 | 王启隆 出品 | AI 科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09; 随着人工智能技术的飞速发展&#xff0c;将大语言模型(LLMs)部署到边缘设备上已成为当前 AI 领域的一个热门趋势。这一趋势不仅体现在微软 Windows 11 AI PC 等产品…

DFN:Data Filtering Networks

论文:https://arxiv.org/abs/2309.17425 代码:Data Filtering Networks | Papers With Code 阿里最近又开源了视觉多模态模型 Qwen2-VL,视觉编码器升级了,所以抓紧补一下DFN Qwen1-VL视觉编码器:OpenClip 的 ViT-bigG-14Qwen2-VL视觉编码器:DFN 的 ViT本文重点: 1:用…

选择排序(C语言实现)

目录 1.基本思想 2.代码实现 代码思路 代码实现 代码测试 3.复杂度分析 1&#xff09;时间复杂度 2&#xff09;空间复杂度 4.特性总结 1.基本思想 选择排序是一种简单直观的比较排序算法。该算法的基本思想是在每一轮中选出当前未排序部分的最小&#xff08;或最大&a…

通义千问模型升级:2.5正式上线的使用体验

个人对比各AI大模型的使用体会 正在用的国内的AI大模型主要有“通义千问”、“文心一言”、“讯飞星火”&#xff0c;还有国外的"ChatGPT"和"Copilot"&#xff0c;我觉得"通义千问"进步神速&#xff0c;因此现在我最常使用的就是"通义千问&…