前端——js补充

一、数学对象

1.随机数

// 0-1

console.log(Math.random());

// 0-9

console.log(Math.random() * 9);

// 6-13

console.log(Math.random() * (13 - 6) + 6);

//n-m

Math.random() * (m - n) + n

2.取整

// 向下取整

console.log(Math.floor(1.9));//1

// 向上取整

console.log(Math.ceil(1.1));//2

// 四舍五入

console.log(Math.round(1.49)); // 1

3.其他

console.log( (2.12312412).toFixed(2) );//2.12

console.log(Math.abs(-888));//888

console.log(Math);

二、定时器对象

1.定时炸弹

let d;

document.querySelector('#k').onclick = () => {

console.log("死歌开大!");

// 设为定时器

d = setTimeout(() => {

console.log("敌方全部,上路。");

}, 3000);

}

document.querySelector('#z').onclick = () => {

console.log("死歌被干掉,大招未成功。");

// 清除定时器

clearTimeout(d)

}

2.定时任务

let b

document.querySelector('#k').onclick = () => {

console.log('天气冷了。');

let i = 0;

// 设置定时任务

b = setInterval(() => {

console.log("妈妈:天气这么冷了,你咋还不穿秋裤?", i++);

}, 2000)

}

document.querySelector('#z').onclick = () => {

// 清除定时任务

clearInterval(b)

console.log("行行行,我穿还不行嘛。");

}

三、日期对象

1.当前时间

console.log(new Date());

2.特定时间

console.log(new Date('2024-06-26 20:00:00'));

console.log(new Date('2024-07-27 20:00:00'));

let d = new Date('2024-07-27 20:01:54');

console.log(d.getFullYear()); // 年

console.log(d.getMonth() + 1); // 月

console.log(d.getDate()); // 日

console.log(d.getHours()); // 时

console.log(d.getMinutes()); // 分

console.log(d.getSeconds()); // 秒

3.特殊时间

console.log(d.getTime()); // 时间戳 单位毫秒

console.log(d.getDay());

四、存储对象

1.临时存储

// 增加数据 // 修改数据

sessionStorage.setItem("宇智波厚度", "吊打一打七")

sessionStorage.setItem("宇智波厚度", "吊打一打七 + 干柿鬼鲛")

// 查数据

console.log(

sessionStorage.getItem("宇智波厚度")

);

// 删除数据

sessionStorage.removeItem("宇智波厚度")

// 清空

sessionStorage.clear()

2.永久存储

// 增加数据 // 修改数据

localStorage.setItem("宇智波厚度", "吊打一打七")

localStorage.setItem("宇智波厚度", "吊打一打七 + 干柿鬼鲛")

// 查数据

console.log(

localStorage.getItem("宇智波厚度")

);

// 删除数据

localStorage.removeItem("宇智波厚度")

// 清空

localStorage.clear()

五、同步和异步

1.同步

let time = 0;

// 吃早餐 10 、上课 100 、打游戏 20、聊天 20

console.log(` 吃早餐 10 `, time += 10);

console.log(` 上课 100 `, time += 100);

console.log(` 打游戏 20 `, time += 20);

console.log(` 聊天 20 `, time += 20);

console.log(time);

console.log(` 上课 100 吃早餐 10 打游戏 20 聊天 20`, time += 100);

2.异步

console.log(1);

// 异步代码

setTimeout(() => {

console.log(2);

}, 2000)

console.log(3);

六、promise对象

复制代码
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>


  <script>

    new Promise((正常反馈, 异常反馈) => {
    //   // 异步代码
      setTimeout(() => {
        console.log('我是异步代码');
        正常反馈('我是异步代码12312');
      }, 2000)
    })
    .then((e)=>{
      console.log(e);
    })
    .catch(e=>{
      console.log(e);
    })



    function name() {
      return new Promise((resolve, reject) => {
        setTimeout(() => {
          reject('xxx')
          resolve('1宇智波厚度');
          // console.log('1宇智波厚度');
        }, 2000)
      })
    }



    // 使用async 和 await 可以实现在函数内无异步
    (async ()=>{
      try{
        console.log(await name());
      }catch(e){
        console.error(e);
      }

      console.log("2我就是宇智波厚渡!");
    })()
    
    

    // name().then((result) => {
    //   console.log(result);
    // })
    // console.log("2我就是宇智波厚渡!");


  </script>


</body>

</html>
相关推荐
百***48074 分钟前
【Golang】slice切片
开发语言·算法·golang
q***925111 分钟前
Windows上安装Go并配置环境变量(图文步骤)
开发语言·windows·golang
仟濹23 分钟前
【Java 基础】面向对象 - 继承
java·开发语言
万少29 分钟前
我是如何使用 Trae IDE 完成《流碧卡片》项目的完整记录
前端·后端·ai编程
9***Y4830 分钟前
前端微服务
前端·微服务·架构
ByteCraze35 分钟前
我整理的大文件上传方案设计
前端·javascript
郝学胜-神的一滴35 分钟前
Linux命名管道:创建与原理详解
linux·运维·服务器·开发语言·c++·程序人生·个人开发
2501_941623321 小时前
C++高性能网络服务器与epoll实战分享:大规模并发连接处理与事件驱动优化经验
开发语言·php
前端小白۞1 小时前
vue2 md文件预览和下载
前端·javascript·vue.js
晚风(●•σ )1 小时前
C++语言程序设计——11 C语言风格输入/输出函数
c语言·开发语言·c++