JavaScript学习笔记三——查阅MDN、日期对象

时间:2024-10-09 11:06:46

目录

一、学会查阅MDN文档

1.1 MDN

1.2如何学习对象中的方法

二、Math对象

2.1math对象

2.2利用对象封装自己的数学对象

2.3随机数方法

三、日期对象

3/1、日期格式化

3.2、获取时间戳


一、学会查阅MDN文档

1.1 MDN


学习一个内置对象的使用,只要学会其常用成员的使用即可,我们可以通过查文档学习,可以通过MDN/W3C来查询。
Mozilla开发者网络(MDN)提供了有关开放网络技术(Open Web )的信息,包括HTML、CSS和万维网及HTML5应用的API。
MDN: /zh-CN/
点击这个链接打开的网页如下:、

1.2如何学习对象中的方法


1.查阅该方法的功能
2.查看里面参数的意义和类型

3.查看返回值的意义和类型

4.通过demo进行测试

二、Math对象
 

2.1math对象

math数学对象不是一个构造函数,所以我们不需要new来调用而是直接使用里面的属性和方法即可

三个取整方法:

()  //向下取整

() //向上取整

()//四舍五入 5往大了取

  1. console.log(Math)
  2. console.log(Math.PI)//π圆周率
  3. console.log(Math.abs(-1))//绝对值
  4. console.log(Math.ceil(11.46))//向上取整
  5. console.log(Math.floor(11.46))//向下取整
  6. // //四舍五入
  7. console.log(Math.round(11.46))
  8. console.log(Math.round(11.56))
  9. console.log(Math.round(11.01))
  10. console.log(Math.max(2, 10, 99, 5))//取最大值
  11. console.log(Math.max(2, 10, 99, 5, 'test'))//NaN
  12. console.log(Math.min(2, 10, 99, 5))//取最小值
  13. console.log(Math.pow(2, 3))//第一个为底数,第二个为指数
'
运行

浏览器控制台输出结果图:

2.2利用对象封装自己的数学对象

  1. //2-利用对象封装自己的数学对象 里面有PI的最大值和最小值
  2. var myMath = {
  3. PI: 3.141592653,
  4. max: function () {
  5. var max = arguments[0];
  6. for (var i = 0; i < arguments.length; i++) {
  7. if (arguments[i] > max) {
  8. max = arguments[i];
  9. }
  10. }
  11. return max;
  12. },
  13. min: function () {
  14. var min = arguments[0];
  15. for (var i = 0; i < arguments.length; i++) {
  16. if (arguments[i] < min) {
  17. min = arguments[i];
  18. }
  19. }
  20. return min;
  21. }
  22. }
  23. console.log(myMath.PI);
  24. console.log(myMath.max(1, 9, 9));
  25. console.log(myMath.min(1, 3, 9));
'
运行


2.3随机数方法

1、random() 返回一个随机的小数 0=<x<1

2、此方法里面不限制参数

3、取两个数之间的随机整数且包含这2个整数:

        (()*(max-min+1))+min

  1. function getRandom(min, max) {
  2. return Math.floor(Math.random() * (max - min + 1) + min);
  3. }
  4. console.log(getRandom(0, 41));
  5. //[0,41)
  6. for (i = 0; i < 50; i++) {
  7. console.log(Math.floor(Math.random() * 42))
  8. }
  9. //5-随机点名
  10. var arr = ['张三', '王二', '李四', '唐微微', '伍键']
  11. console.log(arr[getRandom(0, 5)]);
  12. //案列-猜数字游戏
  13. var random = getRandom(1, 10);
  14. while (true) {
  15. var num = prompt('你猜?输入1-10之间的一个数字')
  16. if (num > random) {
  17. alert('sorry!,你猜大了')
  18. } else if (num < random) {
  19. alert('还差一点点呢,有点小了!')
  20. } else {
  21. alert('恭喜你,猜对了!')
  22. break;
  23. }
  24. }

math对象_随机点名

三、日期对象

1、Date() 日期对象,是一个构造函数,必须使用new开调用

2、日期格式化

3、获取时间戳

3/1、日期格式化

  1. //没有参数返回当前系统的当前时间
  2. var date = new Date();//面向对象写法
  3. console.log(date)
  4. var date1 = new Date('2019.10.1')
  5. var date2 = new Date(2019, 10, 1)
  6. console.log(date1);
  7. console.log(date2);//11月
  8. var YY = date.getFullYear();//返回当前日期的年
  9. var MM = date.getMonth() + 1;//月份是0开始,真正月份需要加1
  10. var day = date.getDay();//星期二,礼拜几
  11. var DD = date.getDate();//返回天
  12. var hh = date.getHours();//返回时
  13. var mm = date.getMinutes();
  14. var ss = date.getSeconds();
  15. var ms = date.getMilliseconds();//返回毫秒
  16. var arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
  17. console.log('今天是:' + YY + '年' + MM + '月' + DD + '日' + arr[day]);
  18. function getTime() {
  19. var time = new Date();
  20. var h = time.getHours();
  21. h = h < 10 ? '0' + h : h;
  22. var m = time.getMinutes();
  23. m = m < 10 ? '0' + m : m;
  24. var s = time.getSeconds();
  25. s = s < 10 ? '0' + s : s;
  26. return h + ':' + m + ':' + s;
  27. }
  28. console.log(getTime());
'
运行


日期格式化
方法名    说明
getFullYear() 返回当前年
getMonth() 返回当前月
getDate() 返回当天日期
getDay() 返回当前星期几
getHours()

返回当前小时

getMinutes() 返回当前分钟
getSeconds() 返回当前秒钟
getMilliseconds() 返回当前毫秒

3.2、获取时间戳

1、可以通过valueof和getTime()获取

2、可以通过简单的写法(常用写法)

        +new Date

  1. //返回距离1970年1月1日 00:00:00到此刻过了多少毫秒
  2. var Time = date.getTime();
  3. console.log(Time)
  4. console.log(date.valueOf());
  5. var time = +new Date();
  6. console.log(time);
  7. console.log(Date.now());


倒计时案列展示:

 

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>倒计时</title>
  8. <style>
  9. * {
  10. padding: 0;
  11. margin: 0;
  12. }
  13. #time {
  14. width: 500px;
  15. height: 200px;
  16. margin: 100px auto;
  17. border: 1px solid black;
  18. }
  19. </style>
  20. </head>
  21. <body>
  22. <div id="time">
  23. 距离国庆还有:
  24. <p>165天21时09分31秒</p>
  25. </div>
  26. <script>
  27. var Time = document.getElementById('time');
  28. var p = document.getElementsByTagName('p')[0];
  29. var guoqin = new Date('2022/10/1');
  30. function fn() {
  31. var date = guoqin - new Date();
  32. // (date);//得到毫秒值
  33. /*
  34. 将毫秒值进行转换:
  35. 1s=>1000ms
  36. 1m=60s
  37. 1h=60m
  38. 1day=24h
  39. 天:
  40. 时:
  41. 分:
  42. 秒:date/1000
  43. */
  44. var DD = Math.floor(date / 1000 / 60 / 60 / 24);//天
  45. var hh = Math.floor(date / 1000 / 60 / 60) % 24;//小时
  46. var mm = Math.floor(date / 1000 / 60) % 60;//分钟
  47. var ss = Math.floor(date / 1000) % 60;//秒
  48. // (DD);
  49. // (hh);
  50. p.innerHTML = DD + '天' + addZore(hh) + '小时' + addZore(mm) + '分钟' + addZore(ss) + '秒'
  51. }
  52. fn()
  53. setInterval(fn, 1000)
  54. function addZore(n) {
  55. return n < 10 ? '0' + n : n;
  56. }
  57. </script>
  58. </body>
  59. </html>