js Math对象 Date()对象 定时器 常用属性

目录

1.Math对象

2.Date对象

获取时间

获取当前时间

2.1例子

模拟朋友圈发布时间,计算时间差

3.定时器

4.常用属性和方法


1.Math对象

Math.PI 圆周率

Math.max(1,5,10) 返回最大值 可以获取两个以及两个以上的最大值 10

Math.min(1,5,10) 返回最小值 可以获取两个以及两个以上的最小值 1

Math.random() 生成[0~1)之间的随机数 不包括1

Math.floor(1.5) 向下取整 小于这个数的最大整数 1

Math.ceil(1.5) 向上取整 大于这个数的最小整数 2

Math.round(1.5) 四舍五入 2

Math.abs(-1.5) 绝对值 1.5

Math.pow(10,2) 次幂 10的2次方 100

Math.sqrt(9) 求平方跟 3

    <script>
        // 圆周率
        console.log('Math.PI 圆周率 输出:' + Math.PI);
        // 最大值   两个数或两个数以上可使用
        console.log('Math.max(10, 50, 30) 最大值    输出:' + Math.max(10, 50, 30));
        // 最小值   两个数或两个数以上可使用
        console.log('Math.min(10, 50, 30) 最小值    输出:' + Math.min(10, 50, 30));
        // 生成[0~1)之间的数 不包括1
        console.log('Math.random() 生成随机数   输出:' + Math.random());
        // 向下取整
        console.log('Math.floor(1.5) 向下取整   输出:' + Math.floor(1.5));
        // 四舍五入
        console.log('Math.round(1.5) 四舍五入   输出:' + Math.round(1.5));
        // 绝对值
        console.log('Math.abs(-1.5) 绝对值  输出:' + Math.abs(-1.5));
        // 次方
        console.log('Math.pow(10, 3) 次方   输出:' + Math.pow(10, 3));
        // 求平方根
        console.log('Math.sqrt(9) 求平方根  输出:' + Math.sqrt(9));
        //1-10随机数
        console.log('1-10随机数 输出:' + Math.floor(Math.random() * 10 + 1));
    </script>

输出结果

2.Date对象

获取时间

创建date()

var now = new Date()

now.getTime() 返回毫秒数

now.Milliseconds()

now.Seconds() 秒 返回0-59

now.Minutes() 分钟 返回0-59

now.Hours() 小时

now.Day() 返回周几 0—周日 6周6

now.Date() 返回当前月的第几天

now.Month() 返回月份 从0开始

getFullYear() 返回4位的年份 如:2002

获取指定时间与世界标准Date()的毫秒差实现思路

转换为毫秒数

Date.parse(now)

将毫秒数转换为时间;

// 1000毫秒 == 1秒  60秒 == 1分钟   60分钟 == 1小时
var res = res / 1000 / 60 / 60

获取当前时间

<script>
function getNowTime() {
  const date = new Date(); //当前时间
  let year = date.getFullYear().toString(); //返回指定日期的年份
  let month = date.getMonth() + 1; //月
  let day = date.getDate(); //日
  let hour = date.getHours(); //时
  let minute = date.getMinutes(); //分
  let second = date.getSeconds(); //秒
  return (
    year + "-" +
    (month < 10 ? "0" + month : month) + "-" +
    (day < 10 ? "0" + day : day) +" " +
    (hour < 10 ? "0" + hour : hour) + ":" +
    (minute < 10 ? "0" + minute : minute) + ":" +
    (second < 10 ? "0" + second : second)
  );
}
</script>

2.1例子

模拟朋友圈发布时间,计算时间差

<!DOCTYPE html>
<html lang="zh">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>获取发布朋友圈的时间</title>
</head>

<body>

    <script>
        // 获取当前时间
        var now = new Date()
        // 获取发布朋友圈的时间
        var fbtime = new Date("2022-8-1-00:00:00")
        // console.log(fbtime)
        // 转成毫秒
        now = Date.parse(now)
        fbtime = Date.parse(fbtime)


        // 计算时间差
        var time = now - fbtime
        // 转换成秒
        var secondTime = parseInt(time / 1000)
        // 转换分钟
        var minutesTime = parseInt(time / 1000 / 60)
        // 转换小时
        var hoursTime = parseInt(time / 1000 / 60 / 60)
        // 转换天数
        var daysTime = parseInt(time / 1000 / 60 / 60 / 24)
        console.log(secondTime)
        console.log(minutesTime)
        console.log(hoursTime)
        console.log(daysTime)
        // 分值结构判断,根据不同的情况输出不同的结构
        if (daysTime >= 1) {
            console.log(daysTime + "天以前")
        } else if (hoursTime > 0 && hoursTime < 24) {
            console.log(hoursTime + "小时以前")
        } else if (minutesTime > 0 && minutesTime < 60) {
            console.log(minutesTime + "分钟以前")
        } else if (secondTime > 0 && secondTime < 60) {
            console.log(secondTime + "秒以前")
        }
    </script>
</body>

</html>

3.定时器

每多少毫秒执行一次

setInterval(function(){},毫秒);

<script>
//创建定时器
    var timer = setInterval(function(){
            console.log(1)
            },1000)
//清除定时器
    clearInterval(timer)
</script>

倒计时多少毫秒后执行一次 只执行一次

setTimeout(function(){},毫秒);

<script>
//创建定时器 只执行一次
var timer = setTimeout(function(){
                console.log(1)
            },1000)
</script>

清除定时器

clearInterval(定时器名);

4.常用属性和方法

截取字符串

从开始位置截取,到指定位置结束,取不到最后一个字符

变量.substring(2,4);

变量.slice(2,4)

从开始位置截取,截取指定长度的字符串

变量.substr(2,4);

字符串拼接

变量.concat("123");

返回索引

返回该字符在字符串中的索引

从前往后找 只找到第一个

变量.indexOf("h");

从后往前找,只找到第一个匹配的

变量.lastIndexOf('h')

当找不到该字符时返回 -1

去除空

去除变量两边的空格

变量.trim()

替换字符 只替换满足条件的第一个字符

将m 替换为 w

变量.replace('m','w')

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值