Math和Date
Math和Date
一、对象
1.对象的概念
对象的本质:键值对,属性名和属性值
对象的意义:存储数据,编程
对象中的变量:属性
对象中的函数:方法
2.对象的赋值
var obj = {};
var obj2 = new Object();
console.log(obj2);
obj.name = "admin";
obj2["age"] = 18;
3.对象的分类
内置对象:系统提供的
本地对象:
内置对象:
所有需要被new的对象
String();
Number();
Object();
Data();
可以直接使用的对象
Math
宿主对象:
DOM(对象模型,对应的对象是document)
document:网页
我们操作的内容都是在document上
BOM(对象模型,对应的对象是window)
window
js中的顶层对象,最大的boss,所有的内容都属于window
document也在window中
非内置对象:自己写的对象
二、Math
1.Math介绍
Math对象,提供了一些数学操作
Math.round(3.6); //4 四舍五入
Math.random()*10; // 返回一个0-9的随机数
Math.abs(-6); //6 绝对值
Math.sqrt(9); //3 开根号,算术平方根
Math.pow(3,3); //27 3的3次方
Math.max(a,b); //返回较大的值
Math.min(a,b); //返回较小的值
Math.ceil(3.6); //4 向上取整
Math.floor(3.6); //3 向下取整
Math.sin(x); //x的正弦值,返回值在-1到1之间
Math.cos(x); //x的余弦值,返回值在-1到1之间
Math属性:
Math.PI; //3.1415926... 输出PI
三、Data
1.进制转换
//十进制转其他
var x=110;
console.log(x);
console.log(x.toString(2) + "这是2");//转二进制
console.log(x.toString(8) + "这是8");//转八进制
console.log(x.toString(16) + "这是16");//转十六进制
//其他转十进制
var x='110';
console.log(parseInt(x,2));//6 二进制转十进制
console.log(parseInt(x,8));//72 八进制转十进制
console.log(parseInt(x,16));//272 十六进制转十进制
//其他转其他
//先用parseInt转成十进制再用toString转到目标进制
console.log(parseInt('ff',16).toString(2));//十六进制转十进制,再十进制转二进制
2.日期的获取
//获取当前实时总时间
var d = new Date();
console.log(d);
//获取方法
console.log(d.getFullYear); //获取年
console.log(d.getMonth); //获取月,从0开始计算,需要+1后才是正常月份
console.log(d.getData); //获取天
console.log(d.getHours); //获取小时
console.log(d.getMinutes); //获取分钟
console.log(d.getseconds); //获取秒
console.log(d.getTime); //获取的是从1970年1月1号0点到现在的总的毫秒数,称为时间戳,唯一的
3.日期格式化功能函数
// 日期格式化功能
function createDate(){
var d = new Date();
var y = d.getFullYear();
var m = d.getMonth();
var mydate = d.getDate();
var myday = d.getDay();
var h = d.getHours();
var mts = d.getMinutes();
var s = d.getSeconds();
switch(myday){
case 0:myday = "星期日";break;
case 1:myday = "星期一";break;
case 2:myday = "星期二";break;
case 3:myday = "星期三";break;
case 4:myday = "星期四";break;
case 5:myday = "星期五";break;
case 6:myday = "星期六";break;
}
return {
year:y,
month:createZero(m+1),
date:createZero(mydate),
day:myday,
hours:createZero(h),
minutes:createZero(mts),
seconds:createZero(mts)
};
}
// 数值的补零(小于10补零)
function createZero(n){
return n<10 ? "0"+n : n;
}
4.设置一个固定的日期
两种:
直接设置:创建日期时传参
字符:一个参数:可以设置局部:没有设置的部分为零
年月日的部分之间可以用". , _ /"等隔开
超出上限,Invalid Dare(意外日期对象)
var d = new Date("2008.8.8 20:8:8");
数值:多个参数:可以设置局部:没有设置的部分为零
每一部分都是一个参数(月份从0开始计算,需实际月份-1)
超出部分进1
var d = new Date(2008,7,8,8,8,8);
方法设置:set系列,接受的是数值,月份从0开始,没有设置的部分以当前时间为主,超出上限进1
分布设置
var d = new Date();
d.setFullYear(2008);
d.setMonnth(7);
d.setDate(8);
d.setHours(2008);
d.setMinutes(2008);
d.setSeconds(2008);
时间戳设置:从1970年1月1日0点,计算机元年开始计算至今过了多少毫秒
5.计算两个时间差值
// 计算两个日期之间的差值,两个日期对象可以直接计算,但是有兼容,最好先获得时间戳再计算
function dateDiff(d1,d2){
var oldDate = new Date(d1);
var newDate = d2 ? new Date(d2) : new Date();
var t = Math.abs(oldDate.getTime() - newDate.getTime());
var d = parseInt(t/1000/60/60/24);
var h = parseInt((t - d*24*60*60*1000)/1000/60/60);
var m = parseInt((t - d*24*60*60*1000 - h*60*60*1000)/1000/60);
var s = parseInt((t - d*24*60*60*1000 - h*60*60*1000 - m*60*1000)/1000);
return {
day:d,
hours:h,
minutes:m,
seconds:s
}
}
6.定时器
定时器:
setInterval(function(){
console.log(1);
},1000)
语法:
开启定时器:
setInterval(函数或者代码串,指定的时间(毫秒));
var t = setInterval(function(){
console.log(1);
},1000)
按照指定的周期(毫秒)不断的执行函数或者是代码串。
计时器初始第一次不执行,第二次才执行。(原理是先计时再执行)
清除定时器:
clearInterval();
配合事件(条件触发)
document.onclick = function(){
clearInterval(t);//清除定时器的变量值
};
延时器:
概念:延迟指定的毫秒数之后,只执行一次回调函数
setTimeout(function(){
console.log(1);
},1000)
语法:
开启延时器
setTimeout(函数或者代码串,指定的时间(毫秒));
var t = setTimeout(function(){
console.log(1);
},5000)
在指定的毫秒数后只执行一次函数或代码。
清除延迟器:在延时器启动前倒计时的时候,如果返回不想要了可以提前停止延时器
clearTimeout();
document.onclick = function(){
clearTimeout(t);//清除定时器的变量值
};
Math和Date的更多相关文章
- javascript_core之正则、Math、Date
javascript_core之正则.Math.Date 1.RegExp:Regular Expression,创建封装正则表达式: ①正则直接量:var reg=/reg/ig:②var re ...
- JavaScript中Global、Math、Date对象的常用方法
JavaScript当中Global.Math.Date类型常用方法如下: /* js 中 Global对象 是一个不存在的对象,它里面的方法可以调用 常用方法: 1 encodeURI 对uri进行 ...
- JavaScript-----13.内置对象 Math()和Date()
1. 内置对象 js对象分为3种:自定义对象(var obj={}).内置对象.浏览器对象. 前两种对象是js基础内容,属于ECMAScript,第三个浏览器对象是js独有的.讲js API的时候会讲 ...
- math and date、ajax、画布
console.log(Math.PI);//圆周率 console.log(Math.sqrt(4));//平方根2 console.log(Math.abs(-2.3));//绝对值2.3 con ...
- javascript_core_06之正则、Math、Date
1.RegExp:Regular Expression,创建封装正则表达式: ①正则直接量:var reg=/reg/ig:②var reg=new RegExp(“reg”,“ig”): 2.Reg ...
- Javascript数组,String对象,Math对象,Date对象,正则表达式
标题栏的滚动<html><head><title>山西众创金融</title></head>function init(){ //1.拿到标 ...
- Java之StringBuffer,StringBuilder,Math,Date,SimpleDateFormat,UUID,File
java.lang 类 StringBuffer java.lang.Object java.lang.StringBuffer 所有已实现的接口: Serializable, Appendable, ...
- 从零开始学习前端JAVASCRIPT — 4、JavaScript基础Math和Date对象的介绍
Math对象的介绍 1:Math对象 Math 对象用于执行数学任务.并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math().您无需创建它,通过把 Math 作为对象使用就 ...
- 几种常见类的使用(System,Runtime,Math,Date,Calendar,Random)
一:System 1.介绍 System:类中的方法和属性都是静态的. out:标准输出,默认是控制台. in:标准输入,默认是键盘. 2.properties 获取系统属性信息:Properties ...
随机推荐
- 洛谷P3275 [SCOI2011]糖果 题解
题目链接: https://www.luogu.org/problemnew/show/P3275 分析: 本题就是一个裸的差分约束. 核心: x=1x=1x=1时,a=b,a−>b,b−> ...
- 巧力避免ViewPager的预加载数据,Tablayout+Fragment+viewPager
问题描述 最近在进行一个项目的开发,其中使用到了Tablayout+Fragment+viewPager来搭建一个基本的框架,从而出现了设置数据适配器的时候,item的位置错乱问题.我打印log日志的 ...
- 如何优雅关闭 Spring Boot 应用
## 前言 随着线上应用逐步采用 SpringBoot 构建,SpringBoot应用实例越来多,当线上某个应用需要升级部署时,常常简单粗暴地使用 kill 命令,这种停止应用的方式会让应用将所有处理 ...
- MyEclipse2014破解版
百度云:链接:http://pan.baidu.com/s/1c3jKMa 密码:yss0 等版本)后,不要打开软件. 二.解压破解文件压缩包,得到一下文件列表: 三.双击run.bat,即可运行cr ...
- java练习---7
//程序员:罗元昊 2017.10.7 import java.util.Scanner; public class L { public static void main(String[] args ...
- mysql 不同版本下 group by 组内排序的差异
最近发现网上找的 group by 组内排序语句在不同的mysql版本中结果不一样. 建表语句: SET FOREIGN_KEY_CHECKS=0; -- ---------------- ...
- java并发笔记之java线程模型
警告⚠️:本文耗时很长,先做好心理准备 java当中的线程和操作系统的线程是什么关系? 猜想: java thread —-对应-—> OS thread Linux关于操作系统的线程控制源码: ...
- 输出单链表倒数第K个结点值
#include<iostream>using namespace std;#include<malloc.h>#include<stdio.h>typedef i ...
- re模块学习
一种模糊匹配的工具. 元字符有如下: . * {} [] + ? () \ ^ ,刚好十个. . : 代表单个任意字符,除换行符以外的 * :修饰前面的字符,代表前面字符出现0或者多次(无穷) {}: ...
- 解决微信小程序开发者工具输入框焦点问题
Windows10笔记本上运行微信小程序开发者工具,输入框(input,textarea)没有焦点,只能在真机调试,效率太低.后来发现是Window10对笔记本高分屏支持不好,要DPI缩放,导致兼容性 ...