js对象案例练习

news2024/11/18 9:47:43

个人名片:
😊作者简介:一名大一在校生,web前端开发专业
🤡 个人主页:python学不会123
🐼
座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。
🎅**学习目标: 坚持每一次的学习打卡,学好js

文章目录

    • 生成验证码
    • 设计计时器
    • 设计倒计时显示器

生成验证码

题目:使用Math.random()静态函数可以返回0~1的随机一个数。注意:随机数或可能会是0,但一定小于1

  //获取指定范围的随机数
        var getRand = function (min, max) {
            return Math.random() * (max - min) + min;
        }
        console.log(getRand(10.1, 20.9));//13.841850648326592
        //获取指定范围的随机整数
        var getRand = function (min, max) {
            return parseInt(Math.random() * (max - min)) + min;
        }
        console.log(getRand(2, 4))//3
        //获取指定长度随机字符
        var getRandStr = function (length) {
            var _string = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";//26个大写字母
            _string += 'abcdefghijklmnopqrstuvwxyz';
            _string += '0123456789-_';
            var _temp = '', _length = _string.length - 1//根据指定长度生成随机字符串
            for (var i = 0; i < length; i++) {//获取随机数字
                var n = parseInt(Math.random() * _length);//映射成字符
                _temp += _string[n];
            }
            return _temp;//返回映射后的字符串
        }
        console.log(getRandStr(6))//ZuDjwa

结果如图所示
在这里插入图片描述

设计计时器

🍐:使用对象属性设计一个时间显示牌
实现步骤如下:

1.设计时间显示函数,应该在该函数中先创建Date对象,获取当前时间,然后分别获取年、月、日、时、分、秒等,最后再组成一个时间字符串返回

 var showtime = function () {
            var nowdate = new Date();//创建Date对象,获取当前时间
            var year = nowdate.getFullYear(),//获取年份
                month = nowdate.getMonth() + 1//获取月份,getMonth()得到的是0-11,需要加1才能得到当前月份的值
            date = nowdate.getDate()//获取日期
            day = nowdate.getDay()//获取一周中的某一天,getDay()得到的是0-6
            week = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
            h = nowdate.getHours()
            m = nowdate.getMinutes()
            s = nowdate.getSeconds()
            h = checkTime(h)  // 函数checkTime用于格式化时、分、秒
            m = checkTime(m)
            s = checkTime(s)
            return year + "年" + month + "月" + date + "日" + week[day] + " " + h + ":" + m + ":" + s;
        }

2.定义一个辅助函数,将1位数字的时间改为2位数字显示

 var checkTime = function (i) {
            if (i < 10) {
                i = "0" + i;
            }
            return i;
        }

3.在页面中添加一个标签,设置她的id值

 <h1 id="showtime"></h1>

4.为标签绑定定时器,在定时器中设置每秒钟调用一次时间显示函数

   var div = document.getElementById("showtime");
        setInterval(function () {
            div.innerHTML = showtime();
        }, 1000);

完整代码实现如下:

<h1 id="showtime"></h1>
    <script>
        var showtime = function () {
            var nowdate = new Date();//创建Date对象,获取当前时间
            var year = nowdate.getFullYear(),//获取年份
                month = nowdate.getMonth() + 1//获取月份,getMonth()得到的是0-11,需要加1才能得到当前月份的值
            date = nowdate.getDate()//获取日期
            day = nowdate.getDay()//获取一周中的某一天,getDay()得到的是0-6
            week = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]
            h = nowdate.getHours()
            m = nowdate.getMinutes()
            s = nowdate.getSeconds()
            h = checkTime(h)  // 函数checkTime用于格式化时、分、秒
            m = checkTime(m)
            s = checkTime(s)
            return year + "年" + month + "月" + date + "日" + week[day] + " " + h + ":" + m + ":" + s;
        }
        var checkTime = function (i) {
            if (i < 10) {
                i = "0" + i;
            }
            return i;
        }
        var div = document.getElementById("showtime");
        setInterval(function () {
            div.innerHTML = showtime();
        }, 1000);

实现效果如图所示:
在这里插入图片描述

设计倒计时显示器

实现思路:用结束时间减去现在时,获取时间差,再利用数学方法从时间差中分别获取日、时、分、秒等,再通过定时器设置每秒执行一次,实时更新效果

 <h1>暑假倒计时:
        <span id="showtime" style="color:red ;"></span>
    </h1>
    <script>
        //使用定时器设计每秒钟调用倒计时函数一次
        var div=document.getElementById('showtime');
       setInterval(function(){
          div.innerHTML=showtime();
       },1000) ;
       var showtime = function(){
        var nowtime=new Date()  //获取当前时间
        endtime= new Date("2023/6/29");// 定义结束时间
        var lefttime=endtime.getTime()-nowtime.getTime()//距离结束时间的毫秒数
        leftdate=Math.floor(lefttime/(1000*60*60*24))//计算天数
        lefthour=Math.floor(lefttime/(1000*60*60)%24)//计算小时数
        leftmiuntes=Math.floor(lefttime/(1000*60)%60)//计算分钟数
        lefts=Math.floor(lefttime/1000%60);//计算秒数
        return leftdate+'天'+lefthour+'小时'+leftmiuntes+'分'+lefts+'秒';//返回倒计时的字符串
        
       }
       

实现效果如图所示:
在这里插入图片描述

勤学多练,大家可以跟着一起做一下,有什么不对的地方欢迎大家指正

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

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

相关文章

SQL Server的日志传送

日志传送和复制 一、前言二、相关术语和定义三、日志传送和复制3.1、在主数据库丢失时从辅助数据库进行复制的要求和过程3.2、使用事务复制进行日志传送3.3、使用合并复制进行日志传送 一、前言 日志传送允许您自动将事务日志备份从主服务器实例上的主数据库发送到单独辅助服务…

思维导图手撕MyBatis源码

文章目录 前置准备通过类加载器读取配置文件流创建sqlSessionFactory建造者模式的使用 打开SqlSession获取Mapper接口对象执行Mapper接口方法 前置准备 既然要读MyBatis的源码&#xff0c;那么我们就要先弄清楚MyBatis的入口在哪。这里我们直接写一个标准的MyBatis使用程序&am…

Node 【Buffer 与 Stream】

文章目录 &#x1f31f;前言&#x1f31f;Buffer&#x1f31f; Buffer结构&#x1f31f; 什么时候用Buffer&#x1f31f; Buffer的转换&#x1f31f; Buffer使用&#x1f31f; 创建Buffer&#x1f31f; 字符串转Buffer&#x1f31f; Buffer转字符串&#x1f31f; 拼接Buffer&am…

微信小程序登录注册页面

// login.js // 获取应用实例 var app getApp() var api require("../../utils/api.js")Page({data: {motto: zhenbei V1.0.0,userInfo: {},hasUserInfo: false,disabled: true,btnstate: default,username: ,password: ,canIUse: wx.canIUse(button.open-type.get…

UE4/5 C++网络服务器编程纪录【零】--准备篇

前言 之前利用业余时间重新复习UE4/5的C开发&#xff0c;闲来无事做了个基于独立服务器的多人在线&#xff08;目前限定客户数量是20人以内&#xff09;DEMO&#xff0c;核心功能在我之前发的B站视频里面有&#xff0c;战斗、动作、交互以及场景演示都有了&#xff0c;有朋友看…

Linux使用:环境变量指南和CPU和GPU利用情况查看

Linux使用&#xff1a;环境变量指南和CPU和GPU利用情况查看 Linux环境变量初始化与对应文件的生效顺序Linux的变量种类设置环境变量直接运行export命令定义变量修改系统环境变量修改用户环境变量修改环境变量配置文件 环境配置文件的区别profile、 bashrc、.bash_profile、 .ba…

函数(有点难,要注重实战)

目录 1. 函数是什么2. C语言中函数的分类2.1 库函数2.1.1 如何学会使用库函数&#xff1f; 2.2 自定义函数 3. 函数的参数3.1 实际参数&#xff08;实参&#xff09;&#xff1a;3.2 形式参数&#xff08;形参&#xff09;&#xff1a; 4. 函数的调用&#xff1a;4.1 传值调用4…

Spark SQL实战(08)-整合Hive

1 整合原理及使用 Apache Spark 是一个快速、可扩展的分布式计算引擎&#xff0c;而 Hive 则是一个数据仓库工具&#xff0c;它提供了数据存储和查询功能。在 Spark 中使用 Hive 可以提高数据处理和查询的效率。 场景 历史原因积累下来的&#xff0c;很多数据原先是采用Hive…

Node内置模块 【url模块与queryString】

文章目录 &#x1f31f;前言&#x1f31f;url 模块&#x1f31f; URL各部分说明&#x1f31f; 将URL字符串转换为对象&#x1f31f; 将对象格式化为URL字符串&#xff1a;url.format(urlObj)&#x1f31f; URL路径处理&#xff1a;url.resolve(from, to) &#x1f31f; querySt…

MySQL-四大类日志

目录 &#x1f341;MySQL日志分为4大类 &#x1f341;错误日志 &#x1f343;修改系统配置 &#x1f341;二进制日志 &#x1f343;查看二进制日志 &#x1f343;删除二进制日志 &#x1f343;暂时停止二进制日志的功能 &#x1f341;事务日志(或称redo日志) &#x1f341;慢查…

SSM整合、环境配置以及详细综合测试(单表查询、多表查询和数据分页、前后端分离、Vue3)

SSM整合、环境配置以及基础综合测试 准备&#xff1a;创建maven项目以及项目框架准备 SSM整合简介 介绍: SSM(SpringSpringMVCMyBatis) 整合&#xff0c;就是三个框架协同开发。Spring整合Mybatis就是将Mybatis核心配置文件当中数据源的配置、事务处理、以及工厂的配置&…

OpenGL入门教程之 深入三角形

一、引言 本教程使用GLEW和GLFW库。  通过本教程&#xff0c;你能轻松的、深入的理解OpenGL如何绘制一个三角形。  如果你不了解OpenGL是什么&#xff0c;可以阅读OpenGL深入理解。 二、基本函数和语句介绍 通过阅读以下的函数&#xff0c;你的大脑里能留下关于OpenGL基本函…

通过CSIG—走进合合信息探讨生成式AI及文档图像处理的前景和价值

一、前言 最近有幸参加了由中国图象图形学学会&#xff08;CSIG&#xff09;主办&#xff0c;合合信息、CSIG文档图像分析与识别专业委员会联合承办的“CSIG企业行——走进合合信息”的分享会&#xff0c;这次活动以“图文智能处理与多场景应用技术展望”为主题&#xff0c;聚…

安全防御第四天:防病毒网关

一、恶意软件 1.按照传播方式分类 &#xff08;1&#xff09;病毒 病毒是一种基于硬件和操作系统的程序&#xff0c;具有感染和破坏能力&#xff0c;这与病毒程序的结构有关。病毒攻击的宿主程序是病毒的栖身地&#xff0c;它是病毒传播的目的地&#xff0c;又是下一次感染的出…

尚融宝21-整合springcloud

目录 一、整合注册中心nacos 二、整合openFeign &#xff08;一&#xff09;准备工作 &#xff08;二&#xff09;导入依赖 &#xff08;三&#xff09;接口的远程调用 &#xff08;四&#xff09;配置超时控制和日志打印 三、整合Sentinel 四、整合gateway服务网关 …

【Spring从成神到升仙系列 五】从根上剖析 Spring 循环依赖

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱敲代码的小黄&#xff0c;独角兽企业的Java开发工程师&#xff0c;CSDN博客专家&#xff0c;阿里云专家博主&#x1f4d5;系列专栏&#xff1a;Java设计模式、数据结构和算法、Kafka从入门到成神、Kafka从成神到升仙…

基于SpringBoot+Vue家乡特色推荐系统

您好&#xff0c;我是码农飞哥&#xff08;wei158556&#xff09;&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f4aa;&#x1f3fb; 1. Python基础专栏&#xff0c;基础知识一网打尽&#xff0c;9.9元买不了吃亏&#xff0c;买不了上当。 Python从入门到精…

【李老师云计算】HBase+Zookeeper部署及Maven访问(HBase集群实验)

索引 前言1. Zookeeper1.1 主机下载Zookeeper安装包1.2 主机解压Zookeeper1.3 ★解决解压后文件缺失1.4 主机配置Zookeeper文件1.4.1 配置zoo_sample.cfg文件1.4.2 配置/data/myid文件 1.5 主机传输Zookeeper文件到从机1.6 从机修改Zookeeper文件1.6.1 修改zoo.cfg文件1.6.2 修…

一文带你了解MySQL的前世今生,架构,组成部分,特点,适用场景

文章目录 一、MySQL的由来二、MySQL的架构2.1 客户端2.2 服务器 三、 MySQL的主要组成部分3.1 连接管理器3.2 查询缓存3.3 解析器3.4 查询优化器3.5 执行器3.6 存储引擎 四、MySQL的特点五、MySQL的应用场景六、总结 一、MySQL的由来 MySQL最初是由瑞典公司MySQL AB的Michael …

4年功能测试,我一进阶python接口自动化测试,跳槽拿了20k......

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 很多人在这求职市…