Math对象的介绍


1:Math对象

Math 对象用于执行数学任务。并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math()。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。


2:Math属性

PI:返回圆周率(约等于3.14159)。


3:Math方法

Math.round(3.6);   // 四舍五入。

Math.random();     // 返回大于等于0到小于1之间的随机数。

// 随机数如何设定范围
// 0 - 100(包含)之间的随机值—Math.round四舍五入
console.log(Math.round(Math.random() * 100));
// 0 - 99(包含)之间的随机值—Math.floor向下取整
console.log(Math.floor(Math.random() * 100));
// 1 - 100(包含)之间的随机值—Math.ceil向上取整
console.log(Math.ceil(Math.random() * 100));
// 100 - 1000(包含)之间的随机值
// 求两个值之间的随机数
/*function random(x, y) {
return Math.round(Math.random() * (y - x)) + x;
}
*/
console.log(Math.round(Math.random() * (1000 - 100)) + 100);

Math.max(a, b);    // 返回较大的数值。

Math.min(a, b);    // 返回较小的数值。

Math.abs(num);     // 返回绝对值。

Math.ceil(3.6);    // 向上取整。4

Math.floor(3.6);   // 向下取整。3

Math.pow(x, y);    // x的y次方。

Math.sqrt(num);    // 开平方。


4:三角函数复习

Math.sin(x);       // x的正弦值,返回值在-1到1之间。

Math.cos(x);       // x的余弦值,返回值在-1到1之间。


附录: 

勾股定理:

var a = 3, b = 4;
var c = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
console.log(c);

三角函数:

var degree = 60;
var rad = Math.PI / 180 * degree;
console.log(Math.ceil(Math.sin(rad) * 10) / 10);
console.log(Math.floor(Math.cos(rad) * 10) / 10); 

Date日期对象的介绍


1:日期对象

定义:JS DATE使用UTC(国际协调时间)1970,1,1,0,0,0,0所经过的毫秒数。

在JS中日期也是它的内置对象,所以我们要对日期进行获取和操作,必须实例化对象。


2:创建日期对象

var oDate=new Date();

将会包含本地时间的信息,包括年月日时分秒 星期。

可以传入参数的格式:

1.“时:分:秒 月/日/年”、“月/日/年 时:分:秒”、“年/月/日”等字符串。

var oDate = new Date('12:12:12 12/12/2017'); //“时:分:秒 月/日/年”
var oDate = new Date('12/14/2017 12:12:12'); //“月/日/年 时:分:秒”
var oDate = new Date('2017/12/14'); //“年/月/日”等字符串

2.年,月,日,时,分,秒。注意不能加“”。月是从0开始算的。

var oDate = new Date(2017, 11, 12, 13, 24, 36); // 0代表1 

3.时间戳。

var oDate = new Date(1516775284475); 

3:日期对象获取信息的方法

注:月份和星期都是从0开始计算的。

getDate():从 Date 对象返回一个月中的某一天 (1 ~ 31)。

getMonth():从 Date 对象返回月份 (0 ~ 11)。

getFullYear():从 Date 对象以四位数字返回年份。

getDay():从 Date 对象返回一周中的某一天 (0 ~ 6)。 其中0代表星期日。

getYear():请使用 getFullYear() 方法代替。由 getYear() 返回的值不总是 4 位的数字!对于介于 1900 与 1999 之间的年份,getYear() 方法仅返回两位数字。对于 1900 之前或 1999 之后的年份,则返回 4 位数字!ECMAscript已经不再要求使用该函数

getHours():返回 Date 对象的小时 (0 ~ 23)。

getMinutes():返回 Date 对象的分钟 (0 ~ 59)。

getSeconds():返回 Date 对象的秒数 (0 ~ 59)。

getMilliseconds():返回 Date 对象的毫秒(0 ~ 999)。

getTime():返回 1970 年 1 月 1 日至今的毫秒数。


4:日期对象设置信息的方法

setDate():设置 Date 对象中月的某一天 (1 ~ 31)。

setMonth():设置 Date 对象中月份 (0 ~ 11)。

setFullYear():设置 Date 对象中的年份(四位数字)。

setYear() 请使用 setFullYear() 方法代替。如果 year 参数是两位的数字,比如 setYear(91),则该方法会理解为 1991。如果要规定 1990 年之前或 1999 年之后的年份,请使用四位数字。 ECMAscript已经不再要求使用该函数

setHours():设置 Date 对象中的小时 (0 ~ 23)。

setMinutes():设置 Date 对象中的分钟 (0 ~ 59)。

setSeconds():设置 Date 对象中的秒钟 (0 ~ 59)。

setMilliseconds():设置 Date 对象中的毫秒 (0 ~ 999)。

setTime():以毫秒设置 Date 对象。


5:关于日期对象的常用操作

1:将日期格式化成字符串。

2:将指定格式字符串转化成日期对象。

3:日期字符串转为毫秒数。

4:计算两个日期的时间差值。

5:日期函数封装(dateUtil.js)(封装常见功能)


6:延时器和定时器

延时器:

语法:setTimeout(函数或者代码串,指定的时间(毫秒));

在指定的毫秒数后只执行一次函数或代码。

清除延迟器:clearTimeout();

var timer3 = setTimeout(function () {
console.log('蹦!');
} , 3000); setTimeout(function () {
clearTimeout(timer3);
}, 2000);

 setTimeout()调用函数的写法方式,也可去掉引号

function print() {
console.log('你好');
}
setTimeout('print()', 3000);//此写法如果在window.onload调用,建议放到匿名函数,
//涉及到作用域的问题,js运行到此报错,也可调整js引用的位置

  

  定时器:

语法:setInterval(函数或者代码串,指定的时间(毫秒));

按照指定的周期(毫秒)不断的执行函数或者是代码串。

清除定时器:clearInterval();

var num = 6;
var timer = setInterval(function () {
console.log(--num); if(num === 0) {
clearInterval(timer);
}
}, 1000);

  

从零开始学习前端JAVASCRIPT — 4、JavaScript基础Math和Date对象的介绍的更多相关文章

  1. JavaScript中Global、Math、Date对象的常用方法

    JavaScript当中Global.Math.Date类型常用方法如下: /* js 中 Global对象 是一个不存在的对象,它里面的方法可以调用 常用方法: 1 encodeURI 对uri进行 ...

  2. 从零开始学习前端JAVASCRIPT — 2、JavaScript基础ES5

    1:ES5简介 ECMAScript 5.1 (或仅 ES5) 是ECMAScript(基于JavaScript的规范)标准的修正. 与HTML5规范进程本质类似,ES5通过对现有JavaScript ...

  3. 李洪强和你一起学习前端之(3)Css基础和选择器

    大家好! 经过了前面的学习,是不是对前端的学习有了初步的了解.虽然我之前有iOS开发的经验,现在接触一门新的语言,对我来说 有一定的优势,但是一门技术对于谁来说都是公平的,我承认,我在接触新知识的时候 ...

  4. JavaScript (六) js的基本语法 - - - Math 及 Date对象、String对象、Array对象

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.Math 1.Math对象的案例 var result= Math.max(10,20,30,40) ...

  5. javascript Date对象的介绍及linux时间戳如何在javascript中转化成标准时间格式

    1.Date对象介绍 Date对象具有多种构造函数.new Date()new Date(milliseconds)new Date(datestring)new Date(year, month)n ...

  6. 从零开始学习前端JAVASCRIPT — 1、JavaScript基础

    1:定义:javascript是一种弱类型.动态类型.解释型的脚本语言. 弱类型:类型检查不严格,偏向于容忍隐式类型转换. 强类型:类型检查严格,偏向于不容忍隐式类型转换. 动态类型:运行的时候执行类 ...

  7. 从零开始学习前端JAVASCRIPT — 10、JavaScript基础ES6(ECMAScript6.0)

    ECMAScript 6.0(简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了.它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发 ...

  8. 从零开始学习前端JAVASCRIPT — 7、JavaScript基础EVENT

    1:事件驱动 1)事件:所谓事件就是js侦测到的用户的操作或是页面的一些行为(怎么发生的) 2)事件源对象:引发事件的元素.(发生在谁的身上) 3)事件处理程序:对事件处理的程序或是函数 (发生了什么 ...

  9. 从零开始学习前端JAVASCRIPT — 9、JavaScript基础RegExp(正则表达式)

    1:正则的概念 正则表达式(regular expression)是一个描述字符规则的对象.可以用来检查一个字符串是否含有某个子字符串,将匹配的子字符串做替换或者从某个字符串中取出符合某个条件的子串等 ...

随机推荐

  1. js拖拽的封装

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  2. composer安装laravel

    安装composer composer是一个很有用的工具,我将用它在本机(win7)上安装laravel 到composer的官网,根据自己的系统要求下载相应的版本 安装laravel 首先cmd下进 ...

  3. java多线程(五)-访问共享资源以及加锁机制(synchronized,lock,voliate)

    对于单线程的顺序编程而言,每次只做一件事情,其享有的资源不会产生什么冲突,但是对于多线程编程,这就是一个重要问题了,比如打印机的打印工作,如果两个线程都同时进行打印工作,那这就会产生混乱了.再比如说, ...

  4. 记一次Hbase查询速度优化经历

    项目背景: 在这次影像系统中,我们利用大数据平台做的是文件(图片.视频等)批次的增删改查,每个批次都包含多个文件,上传完成以后要添加文件索引(文件信息及批次信息),由于在Hbase存储的过程中,每个文 ...

  5. ubuntu16编译安装mysql5.7

    安装环境: linux版本: ubuntu-16.04.3-desktop-amd64 mysql版本:mysql-boost-5.7.20.tar.gz 下载地址:https://dev.mysql ...

  6. HTML + CSS短标题(二,三,四文字长度)两端对齐的方式

    今天切图碰到了一个看似好弄,却并不好弄的文本两端对齐问题.如图1-1

  7. JS中call,apply,bind方法的总结

    why?call,apply,bind干什么的?为什么要学这个? 一般用来指定this的环境,在没有学之前,通常会有这些问题. var a = { user: "小马扎", fn: ...

  8. MapReduce工作原理流程简介

    在MapReduce整个过程可以概括为以下过程: 输入 --> map --> shuffle --> reduce -->输出 输入文件会被切分成多个块,每一块都有一个map ...

  9. sql基本知识

    1.类型转换 用convert,cast float转换出现科学计数字母的问题:可以先转成numeric再转成varchar declare @fl float set @fl=1234567.123 ...

  10. 盒模型 bug 与触发 bfc

     一.margin合并 css经典bug  两个块级元素 分别设置 margin-bottom 和 margin-top 并不能达到预期效果 <style> .up{ width: 200 ...