0


javascript-对象(Math、日期(方法、定时器))

认识对象
请添加图片描述

  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>Document</title>
  8. <script>
  9. /*
  10. 1、通过new运算符声明对象
  11. 2、通过省略new
  12. 3、对象常量赋值 (使用大括号,代表对象)
  13. 对象属性 普通变量
  14. 对象方法 普通函数
  15. 婚后 婚前
  16. */
  17. var obj1 = new Object();
  18. var obj2 = Object();
  19. var obj3 ={};
  20. //新增属性 使用起来和普通的变量没有任何区别
  21. obj3.username = '钢铁侠';
  22. obj3.age = 18;alert(obj3.username);
  23. //新增方法 使用起来和普通的函数没有任何区别
  24. obj3.show = function(){alert("我的名字叫" + obj3.username + ",今年"+obj3.age + "岁");}
  25. obj3.show();
  26. </script>
  27. </head>
  28. <body>
  29. </body>
  30. </html>

请添加图片描述
请添加图片描述
请添加图片描述

  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>Document</title>
  8. <script>
  9. var obj1 = new Object();
  10. var obj2 = Object();
  11. var obj3 ={};
  12. //通过对象常量赋值
  13. var obj3 ={username: "炎清欢",
  14. "age": 18,
  15. show: function(){alert("我的名字叫" + obj3.username + ",今年"+obj3.age + "岁");}};alert(obj3.username);
  16. obj3.show();
  17. </script>
  18. </head>
  19. <body>
  20. </body>
  21. </html>

请添加图片描述
请添加图片描述

  1. <script>
  2. //面向对象的编程思想
  3. var car ={speed:60,
  4. run: function(road){
  5. return road.length / car.speed;}};
  6. var bridge ={
  7. length = 1000
  8. };
  9. var hours = car.run(bridge);alert("一共花了" + hours.toFixed(2) + "小时");
  10. </script>

Math对象的方法

  1. Math.random() //返回0~1之间的随机数
  2. Math.max(num1, num2)//返回较大的数
  3. Math.min(num1, num2)//返回较小的数
  4. Math.abs(num) //绝对值
  5. Math.round() //四舍五入(成整数,只看小数点后一位)
  6. Math.ceil(num) //向上取整
  7. Math.floor(num) //向下取整
  8. Math.pow(x,y) //x的y次方
  9. Math.sqrt(num) //开平方
  10. 传入的参数是: 弧度
  11. Math.sin() //正弦
  12. Math.cos() //余弦
  13. Math.PI = 180弧度
  14. 1弧度 = Math.PI / 180;

举个例子

  1. <script>
  2. alert(Math.max(10,20,30,40)); //40
  3. alert(Math.min(10,20,30,40)); //10
  4. alert(Math.abs(-10)); //10
  5. alert(Math.round(3.49)); //3
  6. alert(Math.ceil(3.1)); //4
  7. alert(Math.floor(3.9)); //3
  8. alert(Math.pow(2,4)); //16
  9. alert(Math.sqrt(9)); //3
  10. alert(Math.sin(30 * Math.PI / 180));
  11. </script>

请添加图片描述
日期对象

  1. 日期对象说明
  2. 1、没有传入参数,默认当前系统时间
  3. Wed Oct 05 2022 09:06:49 GMT+0800(中国标准时间)
  4. GMT格林尼治时间
  5. 2、传入参数
  6. "2000-01-01""2000/01/01"
  7. 按照顺序,分别传入参数 毫秒
  8. 【注】在国外月份是从0开始数的 0~11
  9. 直接传入毫秒数 1秒= 1000毫秒
  10. (已197011 0:0:0 为参照时间点去进行换算)

举个例子

  1. <script>
  2. var d = new Date();
  3. var d1 = new Date("2000-01-01");
  4. var d2 = new Date("2000/01/01");
  5. var d3 = new Date(2000 , 0 , 1 , 8 , 30 , 50);
  6. var d4 = new Date(1000);alert(d);
  7. //Sat Feb 05 2022 16:57:42 GMT+0800 (中国标准时间)alert(d1);
  8. //Sat Jan 01 2000 08:00:00 GMT+0800 (中国标准时间)alert(d2);
  9. //Sat Jan 01 2000 00:00:00 GMT+0800 (中国标准时间)alert(d3);
  10. //Sat Jan 01 2000 08:30:50 GMT+0800 (中国标准时间)alert(d4);
  11. //Thu Jan 01 1970 08:00:01 GMT+0800 (中国标准时间)
  12. </script>

日期对象的方法
请添加图片描述
举个例子

  1. <script>
  2. var d = new Date();alert(d.toLocaleDateString() + " " + d.toLocaleTimeString());
  3. </script>

请添加图片描述
请添加图片描述
举个例子

  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>Document</title>
  8. <script>
  9. function showTime(){
  10. var d = new Date();
  11. var year = d.getFullYear();
  12. var month = d.getMonth() + 1;//0~11
  13. var date = d.getDate();
  14. var week = d.getDay(); //0~6 0是周日
  15. week = numOfChinese(week);
  16. var hour = doubleNum(d.getHours());
  17. var min = doubleNum(d.getMinutes());
  18. var sec = doubleNum(d.getSeconds());
  19. var str = year + "年" + month + "月" + date + "日 星期" + week + " " + hour + ":" + min + ":" + sec;
  20. return str;}//数字转成中文
  21. function numOfChinese(num){
  22. var arr = ["日","一","二","三","四","五","六"];
  23. return arr[num];}function doubleNum(n){if(n < 10){
  24. return "0" + n;}else{
  25. return n;}}
  26. document.write(showTime());
  27. </script>
  28. </head>
  29. <body>
  30. </body>
  31. </html>

请添加图片描述
日期对象的练习

  1. [注] 所有的参照时间点都是1970
  2. Date.parse()
  3. 格式:Date.parse(日期对象)
  4. 功能:可以将日期对象转换成毫秒数
  5. d.getTime()/d.setTime();
  6. 格式:日期对象.getTime/setTime
  7. 功能:将当前日期对象转换成毫秒数
  1. <script>
  2. var d = new Date();alert(d);
  3. //Sat Feb 05 2022 17:37:46 GMT+0800 (中国标准时间)alert(Date.parse(d));
  4. //1644053866000
  5. alert(d.getTime());
  6. //1644053866500
  7. </script>

练习
获取两个日期之间相差的天数
规定,传入日期格式
“2000_01_01”;或者
“2000/01/01”

  1. <script>
  2. function countOfDate(d1, d2){
  3. var dd1 = new Date(d1);
  4. var dd2 = new Date(d2);
  5. var time1 = dd1.getTime();
  6. var time2 = dd2.getTime();
  7. var time = Math.abs(time1 - time2);
  8. return parseInt(time / 1000 / 3600 / 24);}alert(countOfDate("2008-08-08","2019-10-09"));
  9. </script>

请添加图片描述
输入n,输出n天后的时间

  1. <script>
  2. function afterOfDate(n){
  3. var d = new Date();
  4. var day = d.getDate();
  5. d.setDate(day + n);
  6. return d;}alert(afterOfDate(3));
  7. </script>

请添加图片描述
定时器
前言:

  1. 定时器
  2. 格式: var timer = setInterval(函数,毫秒数);功能:每隔对应的毫秒数,执行一次传入的函数
  3. 返回值:启动定时器的,系统分配的编号
  4. clearInterval(timer);//取消定时器
  5. 一般情况下,将没有名字的函数叫做匿名 函数
  6. var timer = setInterval(匿名函数,毫秒数);
  7. var timer = setInterval(function(){
  8. 执行代码;}, 毫秒数);

举个列子

  1. <script>
  2. var i = 0;
  3. function show(){if(i == 5){clearInterval(timer);}
  4. document.write(i++ +"<br/>");}
  5. var timer = setInterval(show, 1000);
  6. </script>

等价于

  1. <script>
  2. var i = 0;
  3. var timer = setInterval(function(){if(i == 5){clearInterval(timer);}
  4. document.write(i++ +"<br/>");}, 1000);
  5. </script>

效果
请添加图片描述
下面做一个定时器
首先
定时器.html

  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>Document</title>
  8. <style>
  9. #div1{width: 600px;height: 100px;text-align: center;line-height: 100px;margin: 100px auto;border: 1px solid black;font-size: 30px;}</style>
  10. <script src = 'tooltwo.js'></script>
  11. <script>
  12. setInterval(function(){
  13. var oDiv = document.getElementById("div1");
  14. oDiv.innerHTML = showTime();}, 1000);
  15. </script>
  16. </head>
  17. <body>
  18. <div id = 'div1'>显示当前时间</div>
  19. </body>
  20. </html>

tooltwo.js

  1. function showTime(){
  2. var d = new Date();
  3. var year = d.getFullYear();
  4. var month = d.getMonth() + 1;//0~11
  5. var date = d.getDate();
  6. var week = d.getDay(); //0~6 0是周日
  7. week = numOfChinese(week);
  8. var hour = doubleNum(d.getHours());
  9. var min = doubleNum(d.getMinutes());
  10. var sec = doubleNum(d.getSeconds());
  11. var str = year + "年" + month + "月" + date + "日 星期" + week + " " + hour + ":" + min + ":" + sec;
  12. return str;}//数字转成中文
  13. function numOfChinese(num){
  14. var arr = ["日","一","二","三","四","五","六"];
  15. return arr[num];}function doubleNum(n){if(n < 10){
  16. return "0" + n;}else{
  17. return n;}}
  18. //document.write(showTime());

效果(是动态的)
请添加图片描述


本文转载自: https://blog.csdn.net/weixin_46048542/article/details/122790343
版权归原作者 九阈 所有, 如有侵权,请联系我们删除。

“javascript-对象(Math、日期(方法、定时器))”的评论:

还没有评论