当前位置: 首页 > news >正文

对象及日期对象

对象

1.什么是对象

类是对象的抽象,对象是类的实例

程序=算法+数据结构

万物皆对象,对象是一个具体的事物,看到见摸得着,对象是一组无序相关属性方法的集合(无序,所以对象没有length属性),所有事物都是对象,列如字符串,数值,数组,函数等.

  • 属性:事物的特征,在对象中用属性表示(常用名词)
  • 方法:事物的行为,在对象中用方法表示(常用动词)

2.对象的创建方式

1.利用字面量进行创建对象

//利用字面量创建一个空的对象
var obj ={};//创建了一个空的对象
var obj1={uname:'yiling',sex:'gril',age:21,sayHi:function(){console.log('hi..');}
}
// 1.里面的属性或者方法我们采取键值对的形式 键 属性名: 值 属性值
// 2.多个属性或者方法中间使用逗号分割
// 3.方法冒号跟的是一个匿名函数
//使用对象
//1.调用对象的属性 我们采取对象名.属性名 .我们理解为 的
console.log(obg1.uname);//yiling
//2.方法二调用 对象名['属性名'],注意括号里面的属性必须加引号,我们后面会用
console.log(obg1['uname']);//yiling
//3.调用对象方法 sayHi的执行 对象名.方法名() 千万别忘记添加小括号
obj1.sayHi();

作业

  /* 请用对象字面量的形式创建一个名字为可可的狗对象。具体信息如下:姓名:可可类型(ype):阿拉斯加状年龄:5岁颜色:棕红色。技能:汪汪汪(bark),演电影(showFilm)*/var dog = {uname: '可可',type: '阿拉斯加犬',age: 5,color: '棕红色',bark: function() {console.log('汪汪汪');},showFilm: function() {console.log('看电视');}}console.log(dog.age);console.log(dog['color']);dog.bark();//不需要再次加console.log,否则会报出underfined

2.利用new Object创建对象

var obj=new Object();//创建了一个空对象 注意O要大写
obj.uname="yiling";
obj.sex="男";
obj.age=18;
obj.sayHi=function(){console.log("hi")
}
//1.我们利用等号=赋值的方法 添加对象的属性和方法
//2.每个属性和方法之间 分号结束
//3.调用跟字面量的调用方法一样
console.log(obj.uname);
console.log(obj['age']);
obj.sayHi();

作业

  //  请用new Object形式创建一个鸣人对象。// 具体信息如下:// ·姓名:鸣人// 。性别:男// 。年龄:19岁// 。技能(ski):影分身术var obj = new Object();obj.uname = "名人";obj.sex = "男";obj.age = 18;obj.skill = function() {console.log("影分身术");}console.log(obj['age']);console.log(obj.sex);obj.skill();

3.利用构造函数创建对象

构造函数:是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与new运算符一起使用,我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面

在这里插入图片描述

构造方法的语法格式:

function 构造函数名(){

this.属性=值;

this.方法=function(){}

}

new 构造函数名();//调用必须加new关键字

function  Star(uname,age,sex){this.name=uname;this.age=age;this.sex=sex;this.sing = function(sang) {console.log(sang)}
}
var yl=new Star('yiling',21,'女');//函数返回的是一个对象
console.log(yl.name);
console.log(yl['sex']);yl.sing("素颜");
//1.构造函数的首字母要大写
//2.我们构造函数不需要return 就可以返回结果
//3.我们调用构造函数,必须使用new关键字
//4.我们只要用new Star() 调用函数,就会创建一个对象{}
//5.我们的属性和方法面前必须加this

3.变量,属性,函数,方法的区别

  1. 变量和属性的相同点,他们都是用来存储数据的

    不同点:

    • 变量:单独声明并赋值 使用的时候直接写变量名 单独存在
    • 属性:在对象里面的不需要声明的,使用的时候必须写 对象名.属性名
  2. 函数和方法的相同点:都是实现某种功能 做某件事

    不同点:

    • 函数是单独声明 并且调用的 函数名() 单独存在的
    • 方法 在对象里面 调用的时候 对象.方法()

4.new关键字

new在执行时会做四件事情:
1.在内存中创建一个新的空对象。
2.让this指向这个新的对象。
3.执行构造函数里面的代码,给这个新对象添加属性和方法。
4.返回这个新对象(所以构造函数里面不需要return)。

5.遍历对象

使用for(var 变量名称 in 对象名称){}进行遍历

  var obj = {uname: 'yiling',age: 21,sex: '女',sing: function() {}}// for in 遍历我们的对象//for(变量 in 对象){}for (var k in obj) {console.log(obj[k]); //输出得到的是属性值,因为k是变量,所以用中括号console.log(k); //k 变量输出 得到的是属性名}

7.内置对象

1.random随机数

  1. Math对象随机数方法 random()返回一个随机小数 0<=x<1

  2. 这个方法里面不跟参数

  3. 代码验证

    console.log(Math.random());

  4. 我们想要得到两个数之间的随机整数 并且包含这两个数整数

    Math+floor(Math.random()*(max-min+1))+min;function getRandom(min,max){return Math.floor(Math.random()*(max-min+1))+min;}console.log(getRandom(1,10));
    
  5. 随机点名

      function getRandom(min, max) {return Math.floor(Math.random() * (max - min + 1) + min);}var arr = ['易玲', '阳哥', '廖廖', '易易'];console.log(arr[getRandom(0, arr.length - 1)]);
    
  6. 猜数字游戏

  // 程序随机生成一个1~50之间的数字,只有10次机会并让用户输入一个数字,// 1.如果大于该数字,就提示,数字大了,继续猜;// 2.如果小于该数字,就提示数字小了,继续猜:// 3.如果等于该数字,就提示猜对了,结束程序。var random1 = Math.floor(Math.random() * 50) + 1;var count = 0;console.log(random1)while (true) {var num = parseInt(prompt("请输入一个数字"));if (num > random1) {console.log('数字大了,继续猜');} else if (num < random1) {console.log('数字小了,继续猜');} else {console.log('恭喜你,猜对了!');break;}count++;console.log(count)if (count == 10) {break;}}

2.Date()

1.概述

  • date对象和math对象不一样,它是一个构造函数,所以我们需要实例化之后才能使用,必须使用new来创建
  • date实例用来处理日期和时间

2.Date()方法的使用

  1. 获取挡当前时间必须实例化

    var now =new Date();
    console.log(now)
    
  2. Date()构造函数的参数

    如果括号里面有时间,就返回参数里面的时间,列如日期格式字符串为’2019-5-1’,可以写成new Date(‘2019-5-1’)

    或者new Date(‘2019/5/1’)或者new Date(2019,5,1)[但是这里返回的是6月 不是5月]

  3. Date()方法

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

    返回当前时间年月日 星期的作业

       var date = new Date();var year = date.getFullYear();var month = date.getMonth() + 1;var dates = date.getDate();var day = date.getDay();var arr = ['星期天', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];console.log(year + "年" + month + "月" + dates + "日 " + arr[day])
    //打印 2023年7月29日 星期六
    

    获取时分秒

     var date = new Date();var h = date.getHours();var s = date.getMinutes();var m = date.getSeconds();console.log(h, s, m);function getTimer() {var h = date.getHours();h = h < 10 ? '0' + h : h;var s = date.getMinutes();s = s < 10 ? '0' + s : s;var m = date.getSeconds();m = m < 10 ? '0' + m : m;return h + ':' + s + ':' + m;}console.log(getTimer());
    

    获取Date总的毫秒数(时间戳) 不是当前时间的毫秒数,而是距离1970年1月1号过了多少毫秒数

    1. 通过valueOf(),getTime()
    2. 简单写法(最常用的写法) var date1= +new Date();
    3. H5新增的 获得总的毫秒数 Date.now()

    倒计时案例

       /* ①核心算法:输入的时间减去现在的时间就是剩余的时间,即倒计时,但是不能拿着时分秒相减,比如05分减去25分,结果会是负数的。用时间戳来做。用户输入时间总的毫秒数减去现在时间的总的毫秒数,得到的就是剩余时间的毫秒数。③把剩余时间总的毫秒数转换为天、时、分、秒(时间戳转换为时分秒)转换公式如下:·d=parselnt(总秒数/60/60/24);/计算天数·h=parselnt(总秒数/60/60%24)/计算小时·m=parselnt(总秒数/60%60);,/计算分数s=parselnt(总秒数%60):计算当前秒数*/function countDown(time) {//返回当前时间戳var nowTime = +new Date();//返回用户输入的时间戳var inputTime = +new Date(time);var times = (inputTime - nowTime) / 1000; //返回当前的总秒数,所以是除以1000//  把剩余时间总的毫秒数转换为天、时、分、秒(时间戳转换为时分秒)var d = parseInt(times / 60 / 60 / 24);d = d < 10 ? '0' + d : d;var h = parseInt(times / 60 / 60 % 24);h = h < 10 ? '0' + h : h;var m = parseInt(times / 60 % 60);m = m < 10 ? '0' + m : m;var s = parseInt(times % 60);s = s < 10 ? '0' + s : s;return d + "天" + h + ":" + m + ":" + s;}console.log(countDown('2023-7-29 12:00:00'));
    

相关文章:

对象及日期对象

对象 1.什么是对象 类是对象的抽象,对象是类的实例 程序算法数据结构 万物皆对象,对象是一个具体的事物,看到见摸得着,对象是一组无序相关属性和方法的集合(无序,所以对象没有length属性),所有事物都是对象,列如字符串,数值,数组,函数等. 属性:事物的特征,在对象中用属性表…...

鼠标滚轮编码器解析

文章目录 前言一、鼠标滚轮编码器逻辑&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 鼠标滚轮编码器为三脚接入&#xff0c;一个COM脚C&#xff08;一般是接地&#xff09;&#xff0c;两个脉冲波形输入脚A、B&#xff0c;转动滚轮编码器会在两个脉冲输入脚上产生脉冲…...

【PTA】攀拓(PAT)- 程序设计(甲级)2023年春季考试

个人学习记录&#xff0c;代码难免不尽人意。 今天又斥资买了今年春季的真题一试&#xff0c;呃&#xff0c;感觉尽力了&#xff0c;89分&#xff0c;在当年排名23&#xff0c;感觉还不错&#xff0c;没有出现读不懂的题目和没有思路的情况&#xff0c;扣的11分分别是第二题两个…...

Spring Cloud Gateway 实现原理

Spring Cloud Gateway是Spring Cloud生态系统中的一个组件&#xff0c;用于构建基于Spring Boot的微服务架构中的网关服务。它的主要目的是提供一种灵活的方式来路由、过滤和转换HTTP请求&#xff0c;从而允许您构建强大、高性能的微服务应用程序。 以下是Spring Cloud Gatewa…...

嘉泰实业:真实低门槛,安全有保障

在互联网金融大行其道的当下&#xff0c;无论用户是多么的青睐、喜爱这种便捷的理财方式&#xff0c;也一定得把资金安全放在心上。要投就投那些实力背景雄厚&#xff0c;诚信经营的平台&#xff0c;可以选择投资用户基数庞大的理财老品牌&#xff0c;也可以选择发展势头迅猛的…...

spring boot 2.7 -> 3.0升级指南

spring boot提供一个版本迁移指南 2.7 -> 3.0...

MQTT 连接优化指南

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

算法和数据结构学习中的一些小的工具函数

算法和数据结构学习中的一些小的工具函数 作者&#xff1a;Grey 原文地址&#xff1a; 博客园&#xff1a;算法和数据结构学习中的一些小的工具函数 CSDN&#xff1a;算法和数据结构学习中的一些小的工具函数 提取一个数二进制最右侧的 1 比如二进制为&#xff1a;0100 0…...

解决2K/4K高分屏下Vmware等虚拟机下Kail Linux界面显示问题

问题现象 在我们日常使用VirtualBox、Vmware workstation、Hyper-V等虚拟机安装使用Kali系统&#xff0c;在2K/4K高分辨率电脑下Kali系统界面显示太小&#xff0c;包括各种软件及命令终端字体均无法很直观的看出&#xff0c;影响我们的正常测试及使用。 常规处理思路 很多人…...

【校招VIP】java语言考点之双亲委派模型

考点介绍&#xff1a; 双亲委派是校招面试中的高频考点之一。双亲委派机制定义: 当一个类加载器收到了类加载的请求的时候&#xff0c;他不会直接去加载指定的类&#xff0c;而是把这个请求委托给自己的父加载器去加载&#xff0c;只有父加载器无法加载这个类的时候&#xff0…...

2023年阿里云新用户云服务器价格表

阿里云&#xff0c;作为国内领先的云计算服务提供商&#xff0c;一直致力于为全球用户提供安全、稳定、高效的云计算服务。对于新用户来说&#xff0c;阿里云服务器是一个非常不错的选择。那么&#xff0c;阿里云新用户云服务器的价格是怎样的呢&#xff1f;本文将为大家详细介…...

信号相关名词概念汇总-采样周期、泄露、窗函数等

信号相关名词概念汇总-采样周期、泄露、窗函数等 以下为信号相关名词概念的汇总 1 名词解释 采样周期/间隔&#xff1a;采样频率的倒数&#xff0c;两次相邻采样之间的时间间隔采样时间&#xff1a;采样的总时长&#xff0c;即采样点数N和采样周期的乘积采样频率&#xff1a; …...

数字化新零售营销模式如何落地?数字化新零售营销功能推荐

​通过科技手段&#xff0c;针对对线下零售店面的客户进行消费行为、频次等的分析&#xff0c;并进一步整合线上线下资源&#xff0c;实现实体零售的效率充分化&#xff0c;便是目前很火的新零售营销模式&#xff0c;能够将实体门店与数字化技术进行有机结合&#xff0c;通过为…...

712. 两个字符串的最小ASCII删除和 -- 动规

712. 两个字符串的最小ASCII删除和 class MinimumDeleteSum:"""712. 两个字符串的最小ASCII删除和https://leetcode.cn/problems/minimum-ascii-delete-sum-for-two-strings/"""def solution(self, s1: str, s2: str) -> int:""&qu…...

python中的小tips

1、注释 1、注释快捷键&#xff1a; Ctrl/ 可以注释掉光标所在的这一行&#xff0c;或者是选中的区域。 对于注释掉的这一行或者这一区域&#xff0c;按下ctrl/则会去掉注释。 2、多行注释 在写多行注释时&#xff0c;英文状态下写三个"&#xff0c;会自动变成六个"&…...

高精度(加减乘除)

高精度算法出现的原因 当参与运算的数的范围大大的超出了标准数据类型&#xff0c;如int&#xff08;-2147483648 ~ 2147483647&#xff09;或者long long的范围&#xff0c;就需要使用高精度算法来进行数的运算。高精度运算的特点是代码长度比较长&#xff0c;本质是对数学运算…...

java企业数据管理系统

项目介绍 此项目为企业数据管理系统的后端部分&#xff0c;前端部分请参考vue-admin&#xff0c;项目实现了菜单管理、用户管理、角色管理和权限管理四个基础模块&#xff0c;前端菜单管理结合动态路由可自由添加菜单。结合Shiro权限管理实现了菜单和按钮的权限控制。 ❝ 前端…...

【云原生进阶之PaaS中间件】第二章Zookeeper-3.1分布式架构介绍

1 分布式架构详解 1.1 分布式发展历程 1.1.1 单点集中式 特点&#xff1a;App、DB、FileServer都部署在一台机器上。并且访问请求量较少 1.1.2 应用服务和数据服务拆分 特点&#xff1a;App、DB、FileServer分别部署在独立服务器上。并且访问请求量较少 1.1.3 使用缓存改善…...

2023-09-11力扣每日一题

链接&#xff1a; 630. 课程表 III 题意 一个课程花费ai天&#xff0c;需要在bi天之前修好才算成功&#xff0c;求最多能修几个课 解&#xff1a; ddl越靠后的应该越晚做&#xff0c;所以先按照b排序&#xff08;这还用问为什么吗&#xff1f; 然后通过维护一个优先队列存…...

windows10使用wheel安装tensorflow2.13.0/2.10.0 (保姆级教程)

安装过程 安装虚拟环境安装virtualenv安装满足要求的python版本使用virtualenv创建指定python版本的虚拟环境 安装tensorflow安装tensorflow-docs直接下载使用wheel下载 在VSCode编辑器中使用虚拟环境下的python解释器&#xff0c;并使用tensorflow常见错误 注意&#xff1a; t…...

【LeetCode与《代码随想录》】贪心算法篇:做题笔记与总结-JavaScript版

代码随想录 贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优。 文章目录 455. 分发饼干376. 摆动序列53. 最大子数组和122. 买卖股票的最佳时机 II55. 跳跃游戏45. 跳跃游戏 II1005. K 次取反后最大化的数组和134. 加油站135. 分发糖果&#xff08;困难&#…...

Http客户端OkHttp的基本使用

简介 OkHttp是一个强大的开源HTTP客户端&#xff0c;它被广泛用于Android和Java应用程序中。OkHttp具有简单易用的API&#xff0c;提供了许多高级功能&#xff0c;如连接池、请求压缩和缓存等。 依赖 要使用OkHttp&#xff0c;需要在项目的构建文件中添加以下依赖&#xff1…...

认识网线上的各种参数标号

最近工作需要&#xff0c;接触了很多不同类型的网线&#xff0c;为了能够区分不同型号的网线&#xff0c;特意做一篇笔记用来学习&#xff0c;如有记录有误之处&#xff0c;欢迎大家指正~初步认识网线 常用的网络电缆有三种&#xff1a;双绞线、同轴电缆和光纤电缆&#xff08…...

软件测开记录(一)

知识点汇总 14&#xff1a;00面试&#xff0c;14&#xff1a;06就出来了&#xff0c;问的问题有点变态。。。 python自动化测试学习路线&#xff08;从入门到精通&#xff09; 单元知识点 测试常用工具 常用的客户端和服务器端开发和测试工具 服务器与客户端常用测试工具与…...

基数排序之代码解析

基数排序是生活中咱们写程序用的比较少的排序&#xff0c;但是这个排序比较巧妙&#xff0c;今天就给大家讲一讲&#xff0c;原理都在代码里面&#xff0c;下面会给一些解释。 import java.util.Arrays;public class Code04_RadixSort {// only for no-negative valuepublic s…...

使用C语言EasyX 创建动态爱心背景

简介 在计算机图形学的世界中&#xff0c;有很多方法可以使程序的界面更加吸引人。在本篇博客中&#xff0c;我将向大家介绍如何使用 EasyX 图形库在 C 中创建一个动态的爱心背景。这不仅是一个简单的动画效果&#xff0c;它还包括背景的星星、旋转的心形以及一个美观的背景渐…...

springboot redisTemplate.opsForValue().setIfAbsent返回null原理

一、版本 springboot版本&#xff1a;spring-boot-starter-data-redis 2.1.6 redisson版本&#xff1a;redisson-spring-boot-starter 3.11.5 二、场景 Boolean res redisTemplate.opsForValue().setIfAbsent("key","value");以上代码同一时间多次执行…...

Python调用Jumpserver的Api接口增删改查

引言 Jumpserver是一款强大的堡垒机系统&#xff0c;可以有效管理和控制企业内部服务器的访问权限&#xff0c;提高网络安全性。本文将介绍如何使用Python编程语言&#xff0c;结合Jumpserver提供的API接口&#xff0c;实现对跳板机的管理和操作。 1、什么是Jumpserver&#…...

后端入门教程:从零开始学习后端开发

1. 编程基础 首先&#xff0c;作为一名后端开发者&#xff0c;你需要掌握至少一门编程语言。Python是一个很好的选择&#xff0c;因为它易于学习且功能强大。让我们从一个简单的示例开始&#xff0c;在控制台输出 "Hello, World!"。 2. 学习Web基础 了解Web开发基…...

无涯教程-JavaScript - DB函数

描述 DB函数使用固定余额递减法返回指定期间内资产的折旧。 语法 DB (cost, salvage, life, period, [month])争论 Argument描述Required/OptionalCostThe initial cost of the asset.RequiredSalvageThe value at the end of the depreciation (sometimes called the salv…...

如何提高网站搜索排名/上海seo培训

python从入门到精通一个月就够了&#xff1f;答案是肯定的。要知道&#xff0c;一个月是一段很长的时间。如果每天坚持用 6-7 小时来做一件事&#xff0c;你会有意想不到的收获。 作为初学者&#xff0c;第一个月的月目标应该是这样的&#xff1a; 熟悉基本概念&#xff08;变…...

江门市外事侨务局网站党建设/微信视频号小店

Salesforce系列&#xff08;0&#xff09;&#xff1a;工作中常用的salesforce相关的英语词汇汇总&#xff01; 前言 今天博主将为大家分享:Salesforce系列&#xff08;0&#xff09;&#xff1a;工作中常用的salesforce相关的英语词汇汇总&#xff01;不喜勿喷&#xff0c;如…...

网站开发实习生/自动点击器软件

root为#&#xff0c;普通用户用$常用指令ls   显示文件或目录-l 列出文件详细信息l(list)---ls -l-a 列出当前目录下所有文件及目录&#xff0c;包括隐藏的a(all)mkdir 创建目录-p 创建目录&#xff0c;若无父目录&#xff0c…...

b2b网站发布信息平台/什么网站做推广比较好

上一节我们准备好了 macvlan 的实验环境&#xff0c;今天在 host1 和 host2 中创建 macvlan 网络 mac_net1&#xff1a; 注意&#xff1a;在 host2 中也要执行相同的命令。 ① -d macvlan 指定 driver 为 macvlan。 ② macvlan 网络是 local 网络&#xff0c;为了保证跨主机能…...

高唐做网站推广/百度推广点击收费标准

1.var x,y,z1; x,y 为 undefined&#xff0c; z 为 1 多个变量不能赋一个值&#xff0c;最后一个才有值&#xff0c;其余都是UNdefind 2.var carname; 未使用值来声明的变量&#xff0c;其值实际上是 undefined。 3.var carname"Volvo"; var carname; 重新声明 JavaS…...

长春网站只长春网站制作做/百度新闻头条新闻

口袋中有若干红、黄、蓝、白、黑5种颜色的球&#xff0c;每次从口袋中取出3个球&#xff0c;定义如下指针数组&#xff0c;编程打印出得到3种不同颜色的球的所有可能取法。 char *bColor[] {“RED”, “YELLOW”, “BLUE”, “WHITE”, “BLACK”}; 输入提示信息和数据格式&am…...