javaScript:七夕特辑-对象的认识与应用(包含日期对象及相关案例)

目录

一.前言

二.认识对象

在js中声明对象的方法

1.直接使用{}声明对象

2.使用构造函数创建对象

获取属性的值

 执行对象方法

解释

三.对象的应用

代码

效果图 

​编辑

 四.日期对象

1.Date 日期对象 

2. getFullYear() 获取当前年份

3.getMonth() 获取当前日期对象中的月份

4.getDate()获取当前日期对象中的月份的第几天

5.getDay() 表示一周中的第几天

6.getHours()获取当前对象的小时数

7.getMinutes() 获取当前对象的分钟数

8.getSeconds()获取当前的秒数

9.getMilliseconds()获取当前对象的毫秒数

10. 获取1970年1月1日8时到当前时间的毫秒数,称为时间戳  

完整代码

五.日期对象的使用

1.通过日期对象渲染出当前的动态时间

效果图

 实现代码(完整)

2.渲染距离到某某天的倒计时

实现效果图

 实现代码(完整)


一.前言

         当我们编写JavaScript代码时,对象是非常重要的概念和数据类型之一。对象可以被认为是一种复合的数据结构,可以存储和组织键值对。它们具有属性和方法,允许我们存储和操作相关数据。在JavaScript中,对象可以通过对象字面量表示法或通过构造函数创建。我们可以使用对象字面量表示法直接创建简单对象,或者使用构造函数创建更复杂的对象。对象的属性和方法可以通过点符号或方括号访问和修改。

        对象广泛应用于不同的编程场景和需求。它们可以用于存储和组织数据、封装功能和行为、模拟实体等。通过对象的属性和方法,我们可以对数据进行处理、执行操作以及传递信息。理解对象的概念和应用对于编写高效和灵活的JavaScript代码至关重要。不仅如此,在许多流行的JavaScript框架和库中,对象也扮演着重要的角色,例如React、Angular和Vue.js。

        在接下来的讨论中,我们将深入研究JavaScript对象的各个方面,包括对象的创建、属性和方法的访问和修改、对象的遍历和复制等。我们还将探索如何使用对象来解决实际的编程问题。通过深入学习对象的认识与应用,我们将能够更好地利用JavaScript的强大功能,编写可维护、可扩展和高效的代码。

二.认识对象

在js中万物皆对象!!!!

在js中声明对象的方法

1.直接使用{}声明对象

obj= {
            key:value key 表示属性名,value表示属性值,如果属性值
            是一个函数,则该属性成为对象方法
        }

2.使用构造函数创建对象

let obj = new Object();

获取属性的值

        获取属性的值,obj.key

        也可以通过 obj[key]的形式获取和设置属性值,并且该形式支持属性名为变量

  console.log(obj2.name);

 执行对象方法

解释

        执行对象的方法 obj.key();key此时是方法名, 该形式{key:value}也可以成为字面量形式,如果写成{"key":"value"}成为json格式

         obj.key = function(){}给对象设置方法key

         obj.key();调用对象的方法

//声明一个对象
   let obj1={
    name:'女娲',
    age:5000,
    act:function(){
        console.log('女娲补天');  //输出act:f f表示函数 方法
    }
   }
   console.log(obj1);

   let obj2 = {
    name:'精卫',
    age:5,
    act:function(){
        console.log('精卫填海');
    }
   }
   console.log(obj2);
   //获取属性的值
   console.log(obj2.name);
   //执行对象的方法
   obj2.act();
 //使用构造函数声明对象
   let obj3 = new Object();
   //给对象设置属性和方法
   obj3.name = '刑天';
   obj3.age = 230;
   obj3.act = function(){
       console.log('刑天舞干戚');
   };
   console.log(obj3);

   obj3.act()

   obj1.sex = '女'
   console.log(obj1);

   let aa = 'name'// .操作符等级较高,obj1.aa
   //输出undefied
   console.log(obj1.aa,obj1[aa],obj1['age']);

三.对象的应用

代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>对象的应用</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .li-1{
            display: flex;
            width: 600px;
          
            height: 200px;
            margin: 20px auto;
            background-color: #eee;
        }
        .li-1 .div-img{
            flex: 1;
        }
        .li-1 .div-wz{
            flex: 3;
        }
        h2{
            margin-bottom: 30px;
        }
    </style>
</head>
<body>
    <button id="btn">点击添加数据</button>
    <ul id="txt">
    </ul>
   
</body>
</html>
<script>
let arr= [
    {
        name:'女娲',
        msg:'女娲补天,女娲补天,女娲补天,女娲补天',
        url:'./images/5e88cd8020b8781bc601ae8e761f1aa.jpg'
    },
    {
        name:'嫦娥',
        msg:'吃月饼,吃月饼,吃月饼',
        url:'./images/199.png'
    },
    {
        name:'杨玉环',
        msg:'杨玉环吃荔枝,杨玉环吃荔枝,杨玉环吃荔枝,杨玉环吃荔枝,杨玉环吃荔枝,杨玉环吃荔枝',
        url:'./images/5325f59994ba2055636149e107f3a53.jpg'
    },
    {
        name:'貂蝉',
        msg:'貂蝉快开大',
        url:'./images/de2f0d368577bd080c1ab37f75e0282.jpg'
    }
]
let txt = document.getElementById('txt')
let btn = document.getElementById('btn')
btn.onclick = function(){
    let str = ''
    for (let i = 0; i < arr.length; i++) {
       str += `
        <li class="li-1">
            <div class="div-img">
                <img src="${arr[i].url}" width="150px" height="200px" alt="">
            </div>
            <div class="div-wz">
                <h2>${arr[i].name}</h2>
                <p>${arr[i].msg}</p>
            </div>
        </li>
          `
        
    }
     txt.innerHTML+=str
   
}
</script>

效果图 


 四.日期对象

js中具有一个专门用来操作日期的对象类型

    使用 Date()构造函数

     

    如果函数中没有任何参数,则此时得到的结果是当前电脑的系统时间

1.Date 日期对象 

let t1 = new Date()  //日期对象
   console.log(t1);
   console.log(typeof t1) //object

2. getFullYear() 获取当前年份

//getFullYear() 获取当前年份
   console.log(t1.getFullYear());
   let yy = t1.getFullYear();

3.getMonth() 获取当前日期对象中的月份

 //getMonth() 获取当前日期对象中的月份,月份从0开始
   //0 表示 一月 
   console.log(t1.getMonth());
   let mon = t1.getMonth()

4.getDate()获取当前日期对象中的月份的第几天

 //getDate()获取当前日期对象中的月份的第几天
   console.log(t1.getDate());
   let dd = t1.getDate();
   /*

5.getDay() 表示一周中的第几天

getDay() 表示一周中的第几天,也就是星期几 0 表示周日
   返回值是 0-6
   */
   console.log(t1.getDay());

6.getHours()获取当前对象的小时数

getHours()获取当前对象的小时数,范围是 0-23
*/    
   console.log(t1.getHours());
   let hh = t1.getHours()

7.getMinutes() 获取当前对象的分钟数

//getMinutes() 获取当前对象的分钟数,范围是0-59
   console.log(t1.getMinutes());
   let m = t1.getMinutes()

8.getSeconds()获取当前的秒数

//getSeconds()获取当前的秒数,范围是0-59
   console.log(t1.getSeconds());
   let s = t1.getSeconds()

9.getMilliseconds()获取当前对象的毫秒数

getMilliseconds()获取当前对象的毫秒数,范围是0-999 1s=1000ms
   console.log(t1.getMilliseconds());

10. 获取1970年1月1日8时到当前时间的毫秒数,称为时间戳  

   获取1970年1月1日8时到当前时间的毫秒数,成为时间戳  
   */
   console.log(t1.getTime());
  

完整代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>日期对象</title>
</head>
<body>
    <p id="times"></p>
</body>
</html>
<script>
    /*
    js中具有一个专门用来操作日期的对象类型
    使用 Date()构造函数
     
    如果函数中没有任何参数,则此时得到的结果是当前电脑的系统时间

    */
   let t1 = new Date()  //日期对象
   console.log(t1);
   console.log(typeof t1) //object
   
   //getFullYear() 获取当前年份
   console.log(t1.getFullYear());
   let yy = t1.getFullYear();
   //getMonth() 获取当前日期对象中的月份,月份从0开始
   //0 表示 一月 
   console.log(t1.getMonth());
   let mon = t1.getMonth()
   //getDate()获取当前日期对象中的月份的第几天
   console.log(t1.getDate());
   let dd = t1.getDate();
   /*
   getDay() 表示一周中的第几天,也就是星期几 0 表示周日
   返回值是 0-6
   */
   console.log(t1.getDay());
/*
getHours()获取当前对象的小时数,范围是 0-23
*/    
   console.log(t1.getHours());
   let hh = t1.getHours()
//getMinutes() 获取当前对象的分钟数,范围是0-59
   console.log(t1.getMinutes());
   let m = t1.getMinutes()
//getSeconds()获取当前的秒数,范围是0-59
   console.log(t1.getSeconds());
   let s = t1.getSeconds()
//getMilliseconds()获取当前对象的毫秒数,范围是0-999 1s=1000ms
   console.log(t1.getMilliseconds());

   times.innerHTML = `${yy}-${mon+1}-${dd}-${hh}:${m}:${s}`;

   /*
   获取1970年1月1日8时到当前时间的毫秒数,成为时间戳  
   */
   console.log(t1.getTime());
  
</script>

五.日期对象的使用

1.通过日期对象渲染出当前的动态时间

效果图

 实现代码(完整)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>日期对象的使用</title>
</head>
<body>
    <p id="aa"></p>
</body>
</html>
<script>
//封装设置当前日期的函数
function seTime(){
    let myDate = new Date();
    let yy = myDate.getFullYear();  //年
    let mm = myDate.getMonth()+1;  //月 记得+1
    let dd = myDate.getDate();      //日

    let hh = myDate.getHours();     //时
    let m = myDate.getMinutes();     //分
    let s = myDate.getSeconds();      //秒
    let week = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
    let day = myDate.getDay();  //一周的第几天
    
    aa.innerHTML = `${yy}-${mm<10?'0'+mm:mm}-${dd<10?'0'+dd:dd} 
     ${hh<10?'0'+hh:hh}:${m<10?'0'+m:m}:${s<10?'0'+s:s} 今天是${week[day]}`
}
seTime()
//设置计时器
setInterval(seTime,1000);
</script>

2.渲染距离到某某天的倒计时

实现效果图

 实现代码(完整)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>倒计时</title>
</head>
<body>
    <p id="msg"></p>
</body>
</html>
<script>
    /*
    获取固定日期的时间对象,必须在 Date()中传入参数
    传入参数的几种方法
   1. Date(2023(年),7(月),28(日),0(时),0(分),0(秒)); 这种方式注意:
    月份需要—1

    2. Date('月 日 年 时:分:秒')
    3.Date('月 日 ,年 时:分:秒')
    */
   let t1 = new Date(2023,7,28,0,0,0);
   console.log(t1);

   let t2 = new Date('8 28 2023 0:0:0');
   console.log(t2);

   let t3 = new Date('8 28 ,2023 0:0:0')
   console.log(t3);
   
   function showDate(){
    //获取当前日期对象
   let now = new Date();
   console.log(now);
   //两个日期对象相减,就得到了两个日期对象相差的时间戳(毫秒数)
   let time = t3-now;
   console.log(time);
   let day =  Math.floor(time/1000/60/60/24) ;
   console.log(day);
   let hour = Math.floor(time%86400000/1000/60/60)  ;
   console.log(hour);
   let nim = Math.floor(time%86400000/1000/60%60) ;
   console.log(nim);
   let sec = Math.floor(time%86400000/1000%60) ;
   console.log(sec);
   msg.innerHTML = `距离放假还有${day}天${hour}小时${nim}分钟${sec}秒`;
   }
   showDate();
   setInterval(showDate,1000)

</script>

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

记一次由于整型参数错误导致的任意文件上传

当时误打误撞发现的&#xff0c;觉得挺奇葩的&#xff0c;记录下 一个正常的图片上传的点&#xff0c;文件类型白名单 但是比较巧的是当时刚对上面的id进行过注入测试&#xff0c;有一些遗留的测试 payload 没删&#xff0c;然后在测试上传的时候就发现.php的后缀可以上传了&a…

初识 JVM 01

JVM JRE JDK的关系 JVM 的内存机构 程序计数器 java指令的执行流程&#xff1a; 1 右侧的java源代码编译为左侧的java字节码&#xff08;右侧第一个方块对应左侧第一个方块&#xff09; 2 字节码 经过解释器 变为机器码 3 机器码就可以被cpu来执行 程序计数器的作用就…

C语言<自定义类型>结构体、枚举、联合

✨Blog&#xff1a;&#x1f970;不会敲代码的小张:)&#x1f970; &#x1f251;推荐专栏&#xff1a;C语言&#x1f92a;、Cpp&#x1f636;‍&#x1f32b;️、数据结构初阶&#x1f480; &#x1f4bd;座右铭&#xff1a;“記住&#xff0c;每一天都是一個新的開始&#x1…

壁仞科技与百度飞桨完成II级兼容性测试

近日&#xff0c;壁仞科技BR104通用GPU与百度飞桨已完成II级兼容性测试。测试结果显示&#xff0c;双方兼容性表现良好&#xff0c;整体运行稳定。这是壁仞科技加入飞桨“硬件生态共创计划”后的阶段性成果。产品兼容性证明本次II级兼容性测试完成了涵盖自然语言处理、计算机视…

七月 NFT 行业解读:游戏和音乐 NFT 引领增长,Opepen 掀起热潮

作者&#xff1a;lesleyfootprint.network 2023 年 7 月&#xff0c;NFT 市场的波动性持续存在&#xff0c;交易量呈下降趋势。然而&#xff0c;游戏和音乐 NFT 等领域的增长引人注目。参与这些细分领域的独立用户数量不断增加&#xff0c;反映了这些领域的复苏。 本综合报告…

opencv 进阶17-使用K最近邻和比率检验过滤匹配(图像匹配)

K最近邻&#xff08;K-Nearest Neighbors&#xff0c;简称KNN&#xff09;和比率检验&#xff08;Ratio Test&#xff09;是在计算机视觉中用于特征匹配的常见技术。它们通常与特征描述子&#xff08;例如SIFT、SURF、ORB等&#xff09;一起使用&#xff0c;以在图像中找到相似…

分布式锁系列之zookeeper分布式锁和mysql分布式锁

目录 介绍 下载安装 基本指令​编辑 java集成zookeeper 官方提供版 永久节点 临时节点​编辑 永久序列化节点 判断当前节点是否存在 获取当前节点中的数据内容 获取当前节点的子节点 更新节点内容 删除节点 zookeeper实现分布式锁 Mysql实现分布式锁 总结 介绍 ZooK…

【Spring框架】Spring事务的介绍与使用方法

⚠️ 再提醒一次&#xff1a;Spring 本身并不实现事务&#xff0c;Spring事务 的本质还是底层数据库对事务的支持。你的程序是否支持事务首先取决于数据库 &#xff0c;比如使用 MySQL 的话&#xff0c;如果你选择的是 innodb 引擎&#xff0c;那么恭喜你&#xff0c;是可以支持…

2023年计算机设计大赛国三 数据可视化 (源码可分享)

2023年暑假参加了全国大学生计算机设计大赛&#xff0c;并获得了国家三等奖&#xff08;国赛答辩出了点小插曲&#xff09;。在此分享和记录本次比赛的经验。 目录 一、作品简介二、作品效果图三、设计思路四、项目特色 一、作品简介 本项目实现对农产品近期发展、电商销售、灾…

基于AVR128单片机世界电子时钟的设计

一、系统方案 上电初始化完成系统初始化&#xff0c;液晶滚动显示北京、莫斯科、东京、伦敦、巴黎、纽约等六个城市的标准时间&#xff0c;显示的内容包括地区名及相应地区的年、月、日、星期、时、分、秒。 使用K1按键控制滚动显示或稳定显示某个地区的时间。 使用K3、K4、K5按…

Linux操作系统面试题汇总

Linux操作系统 1.Linux操作命令 Linux 目录结构及常用命令详细介绍参考 2.在Linux中find和grep的区别&#xff1f; 在Linux中&#xff0c;find命令用于按照指定条件搜索文件或目录&#xff0c;而grep命令则用于在文件中搜索指定的文本字符串。具体来说&#xff0c;find命令可…

使用扩展函数方式,在Winform界面中快捷的绑定树形列表TreeList控件和

在一些字典绑定中&#xff0c;往往为了方便展示详细数据&#xff0c;需要把一些结构树展现在树列表TreeList控件中或者下拉列表的树形控件TreeListLookUpEdit控件中&#xff0c;为了快速的处理数据的绑定操作&#xff0c;比较每次使用涉及太多细节的操作&#xff0c;我们可以把…

深入了解Git:介绍及常用命令指南

当今软件开发领域中&#xff0c;版本控制是一个至关重要的概念&#xff0c;而Git作为最流行的分布式版本控制系统&#xff0c;发挥着不可替代的作用。本文将介绍Git的基本概念以及常用命令&#xff0c;帮助你更好地理解和使用这一强大的工具。 Git简介 Git是一种分布式版本管…

RK3399平台开发系列讲解(内核调试篇)网络调试工具

🚀返回专栏总目录 文章目录 一、dstat 工具介绍二、例如dstat 进行网络问题调试三、ss 命令查看 TCP 详细信息四、netstat 查看TCP详细信息沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇将介绍网络的相关工具。 一、dstat 工具介绍 当设备产生问题,而我们又…

Mysql 开窗函数(窗口函数)

文章目录 全部数据示例1&#xff08;说明&#xff09;开窗函数可以比groupby多查出条件列外的字段&#xff0c;开窗函数主要是为了跟聚合函数一起使用&#xff0c;达到分组统计效果&#xff0c;并且开窗函数的结果集基本都是跟总行数一样示例2示例3示例4错误示例1错误示例2错误…

2023河南萌新联赛第(六)场:河南理工大学

目录 A 简单的异或 题目&#xff1a; 解析&#xff1a; B 这是dp题吗 题目链接&#xff1a;https://ac.nowcoder.com/acm/contest/63602/B 解析&#xff1a; D 买饼干的小Y 题目&#xff1a;https://ac.nowcoder.com/acm/contest/63602/D 解析&#xff1a; E 不爱吃早…

Redisson 分布式锁

Redis是基础客户端库&#xff0c;可用于执行基本操作。 Redisson是基于Redis的Java客户端&#xff0c;提供高级功能如分布式锁、分布式集合和分布式对象。 Redisson提供更友好的API&#xff0c;支持异步和响应式编程&#xff0c;提供内置线程安全和失败重试机制。 实现步骤…

【算法】活用双指针完成复写零操作

Problem: 1089. 复写零 文章目录 题目解析算法原理分析找到最后一个复写的位置从后往前进行复写操作 代码展示 题目解析 首先我们来分析一下本题的题目意思 可以看到题目中给到了一个数组&#xff0c;意思是让我们将数组中的零元素都复写一遍&#xff0c;然后将其余的元素向后平…

云计算在IT领域的发展和应用

文章目录 云计算的发展历程云计算的核心概念云计算在IT领域的应用1. 基础设施即服务&#xff08;IaaS&#xff09;&#xff1a;2. 平台即服务&#xff08;PaaS&#xff09;&#xff1a;3. 软件即服务&#xff08;SaaS&#xff09;&#xff1a; 云计算的拓展应用结论 &#x1f3…

无涯教程-PHP - 全局变量函数

全局变量 与局部变量相反,可以在程序的任何部分访问全局变量。通过将关键字 GLOBAL 放置在应被识别为全局变量的前面,可以很方便地实现这一目标。 <?php$somevar15;function addit() {GLOBAL $somevar;$somevar;print "Somevar is $somevar";}addit(); ?> …
最新文章