JavaScript——常用库

news2024/9/20 18:30:47

文章目录

  • 绪论
  • jQuery
    • 选择器
    • 事件
    • 修改 css
    • 查找
    • ajax
  • setTimeout与setInterval
    • setTimeout
    • setInterval
  • requestAnimationFrame
  • Map与Set
  • localStorage
  • JSON
  • Date
  • WebSocket
  • window
  • canvas
  • 结语

绪论

『时间是伟大的作家,总会写下完美的结局。』—— 「秋之回忆」

jQuery

这个是优化版本的 js 写法,原生 js 比如下面这样子

let main = function () {
    let div = document.querySelector('div');
    console.log(div);
}

在这里插入图片描述

  • 可以选择引用这个包来使用,把下面这句话加到 html 的 head 标签里面就行
<script src="https://cdn.acwing.com/static/jquery/js/jquery-3.3.1.min.js"></script>
  • 或者去官网安装即可:jquery
  • 对比
let main = function () {
    let div = document.querySelector('div');
    console.log(div);
    //上面是 js 原生写法,下面是 jquery 写法
    let $div = $(`div`);
    console.log($div);
}

选择器

如下的方式,选择 div , class , id

let $div = $(`div`);
let $div = $(`.mydiv`);
let $div = $(`#mydiv`);
  • 把一个标签里面的子标签选择出来
let $div = $(`#mydiv>p`);

事件

  • 绑定一个鼠标点击事件
let $div = $(`div`);
    $(`div`).on('click', function (e) {
        console.log("click div");
    });
  • 简写
let $div = $(`div`);
    $(`div`).click(function () {
        console.log("click div");
    });
  • 阻止事件向上传递,阻止事件的默认行为
return false;
  • 隐藏和显示,有很多相关的特效,之后写网站的时候可以看需要什么特效,直接拿过来用就好了
let main = function () {
    let $div = $(`div`);
    let $btn_hide = $(`#hide-btn`);
    let $btn_show = $(`#show-btn`);

    $btn_hide.click(function () {
        $div.hide(3000);//里面的参数表示隐藏需要花多长时间,单位是毫秒
        //感觉效果还是非常炫酷的
    });
    $btn_show.click(function () {
        $div.show();
    });
}

修改 css

可以直接在 js 文件里面修改标签的 css 样式

$('div').css({
    width: "200px",
    height: "200px",
    "background-color": "orange",
});
  • js 可以操纵类(class),样式(css),标签(id),html,text

查找

$(selector).find(filter)

ajax

用来和后端通信的

$.ajax({
    url: url,
    type: "GET",
    data: {
    },
    dataType: "json",
    success: function (resp) {

    },
});

setTimeout与setInterval

setTimeout

let timeout_id = setTimeout(() => {
    console.log("Hello World!")
}, 2000);  // 2秒后在控制台输出"Hello World"

setInterval

let interval_id = setInterval(() => {
    console.log("Hello World!")
}, 2000);  // 每隔2秒,输出一次"Hello World"

requestAnimationFrame

实现动画的效果,一秒展示图片超过 24 张在人脑就会形成动画的效果,目前大部分浏览器一秒钟刷新 60 次

具体的代码里面,有一个递归调用的思路

let step = (timestamp) => {  // 每帧将div的宽度增加1像素
    let div = document.querySelector('div');
    div.style.width = div.clientWidth + 1 + 'px';
    requestAnimationFrame(step);
};

requestAnimationFrame(step);

很多开发都是黑盒,就是开发者调用封装好的函数来进行开发

刚刚去尝试了一下,把一个项目仓库设置为私有的,然后通过邀请他人使得被邀请的人具有访问权限,非常方便

Map与Set

一些简单的增删改查

set(key, value)//插入键值对

localStorage

存在用户的浏览器里面

setItem(key, value):插入
getItem(key):查找
removeItem(key):删除
clear():清空

JSON

可以实现对象和字符串之间的转换

JSON.parse():将字符串解析成对象
JSON.stringify():将对象转化为字符串

Date

就是和时间相关的一些函数调用,需要的时候去查就好了,可以查年份,月份,日期,周几,小时,分钟,秒,甚至毫秒,下面是一个例子

Date.now():返回现在时刻。
Date.parse("2022-04-15T15:30:00.000+08:00"):返回北京时间202241515:30:00的时刻。

WebSocket

客户端和服务端建立全双工通信

window

对页面进行一些操作

window.open("https://www.acwing.com")在新标签栏中打开页面。
location.reload()刷新页面。
location.href = "https://www.acwing.com":在当前标签栏中打开页面。

canvas

可以在官网用一些现成的函数来写
canvas

<html>

<head>
    <script type="application/javascript">
        function draw() {
            const canvas = document.getElementById("canvas");
            if (canvas.getContext) {
                const ctx = canvas.getContext("2d");

                ctx.fillRect(25, 25, 100, 100);
                ctx.clearRect(45, 45, 60, 60);
                ctx.strokeRect(50, 50, 50, 50);
            }
        }
    </script>
</head>

<body onload="draw();">
    <canvas id="canvas" width="150" height="150"></canvas>
</body>

</html>

在这里插入图片描述
在这里插入图片描述

<html>

<head>
    <script type="application/javascript">
        function draw() {
            var canvas = document.getElementById("canvas");
            if (canvas.getContext) {
                var ctx = canvas.getContext("2d");

                ctx.beginPath();
                ctx.arc(75, 75, 50, 0, Math.PI * 2, true); // 绘制
                ctx.moveTo(110, 75);
                ctx.arc(75, 75, 35, 0, Math.PI, false); // 口 (顺时针)
                ctx.moveTo(65, 65);
                ctx.arc(60, 65, 5, 0, Math.PI * 2, true); // 左眼
                ctx.moveTo(95, 65);
                ctx.arc(90, 65, 5, 0, Math.PI * 2, true); // 右眼
                ctx.stroke();
            }
        }
    </script>
</head>

<body onload="draw();">
    <canvas id="canvas" width="150" height="150"></canvas>
</body>

</html>

结语

『心之所愿,无所不成。』—— 「网络」

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1953898.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

特斯拉财报看点:FSD拳打华为,Robotaxi 脚踢百度

大数据产业创新服务媒体 ——聚焦数据 改变商业 特斯拉发最新财报了&#xff0c;这不仅是一份财务报告&#xff0c;更是一张未来发展的蓝图。在这份蓝图中&#xff0c;两个关键词格外耀眼——FSD&#xff08;全自动驾驶系统&#xff09;和Robotaxi&#xff08;无人驾驶出租车&…

【通俗理解】大脑网络结构理论解析——从小世界到无标度性的深度刻画

大脑网络结构理论解析——从小世界到无标度性的深度刻画 大脑网络结构的核心特性 大脑网络结构理论旨在揭示大脑神经元之间连接的复杂模式。其中&#xff0c;小世界特性和无标度性是大脑网络的两个重要特征。小世界特性意味着网络中大部分节点之间都通过较短的路径相连&#…

pycharm+pytorch+gpu开发环境搭建

一、安装anacoda 1、下载Anaconda安装包 官网下载地址 https://www.anaconda.com/distribution/ 清华镜像 Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 下载python3.8对应的版本Anaconda3-2021.04-Windows-x86_64.exe 下载完成…

.Net医院检验系统源码,lis源码,化验系统源码

系统概述&#xff1a; 医学实验室信息系统即LIS&#xff0c;系统把检验、检疫、放免、细菌微生物及科研使用的各类分析仪器&#xff0c;通过计算机联网&#xff0c;实现各类仪器数据结果的实时自动接收、自动控制及综合分析&#xff1b;与条码设备配套使用&#xff0c;自动生成…

手把手教小白Vue3(保姆式服务)

1.初识Vue3 2.Vue3组合式API 2.1认识create-vue create-vue是官方新的脚手架工具&#xff0c;vite下一代构建工具 node -v >16 npm init vuelatest npm run dev 2.2 setup <script setup>原始写法 <script> export default { //执行时机比beforeCre…

Linux(linux命令)和Window(powershell)的查找命令

目录 LinuxWindow基本操作(1)Get-ChildItem(2)Get-ChildItem模糊查找1. 使用星号(*)通配符(常用)1、第一个命令:使用 `-Filter` 参数(常用)2、第二个命令:使用管道和 `Where-Object`3、差异2. 使用问号(?)通配符(不常用)3. 结合使用星号和问号(不常用)4. 使…

6. 开发板烧录

1. 概述 采用恒玄的底板+2小板的开发板 2. 开发板资料 详见:<<BES AUDIO DEV BOARD USER MANUUAL_9v5.pdf>> 3. 硬件接线 供电:可以采用电池供电,也可以采用Type-c供电 烧录:采用Type-C口,实际上就是串口。(下图带黑色标志的)

VSCode+git的gitee仓库搭建

​ 在此之前你已经在gitee创建好了账号&#xff0c;并新建了一个仓库。 1. 安装 Visual Studio Code Visual Studio Code 是编辑 Markdown 和站点配置文件的基础&#xff0c;以下将其简称为 VSCode&#xff0c;你可以在它的 官方网站 下载到它。 如若不理解各个版本之间的区别…

编解码器架构

一、定义 0、机器翻译是序列转换模型的一个核心问题&#xff0c; 其输入和输出都是长度可变的序列。 为了处理这种类型的输入和输出&#xff0c; 我们设计一个包含两个主要组件的架构&#xff1a; 第一个组件是一个编码器&#xff08;encoder&#xff09;&#xff1a; 它接受一…

【Python实战因果推断】60_随机实验与统计知识2

目录 An A/B Testing Example An A/B Testing Example 在许多公司中&#xff0c;一种常见的策略是提供廉价甚至免费的产品&#xff0c;这种产品本身可能并不盈利&#xff0c;但其目的是吸引新客户。一旦公司获得了这些客户&#xff0c;就可以向他们推销其他更盈利的产品&#x…

k8s学习--k8s集群部署kubesphere的详细过程

文章目录 kubesphere简介k8s群集部署kubespere环境准备工作一、配置nfs二、配置storageclass三、kubesphere开启服务(devops) kubesphere简介 下面是官方文档描述 KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的分布式操作系统&#xff0c;完全开源&#xff0c;支持多…

《程序猿入职必会(7) · 前端请求工具封装》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

足浴行业押金原路退回怎么开通?

一手机版和电脑版差别 手机版押金管理的优点&#xff1a; 1. 便携性&#xff1a;管理人员可以随时随地通过手机查看和处理押金相关事务&#xff0c;不受地点限制。例如&#xff0c;当不在店内时&#xff0c;仍能及时了解押金的收支情况&#xff0c;对突发问题进行处理。 2. 实…

深入解析食堂采购系统源码:打造高效食材供应链APP的核心

本篇文章&#xff0c;笔者将从系统架构、关键模块、技术选型和优化策略等方面&#xff0c;深入解析食堂采购系统的源码&#xff0c;为您揭示打造高效食材供应链APP的核心要点。 一、系统架构 食堂采购系统通常采用分层架构&#xff0c;以保证系统的可维护性和扩展性。主要包括…

糊涂工具包和commons包(Java)

工具包&#xff08;Commons-io&#xff09; 介绍&#xff1a; Commons是apache开源基金组织提供的工具包&#xff0c;里面有很多帮助我们提高开发效率的API 比如&#xff1a; StringUtils 字符串工具类 NumberUtils 数字工具类 ArrayUtils 数组工具类 RandomUtils…

记录|C#批量修改文件后缀

文章目录 前言一、.CHK 批量修改成 .mp3更新时间 前言 针对昨天博文&#xff1a;记录&#xff5c;cmd方式恢复U盘中的数据中的文件修复为.CHK格式后&#xff0c;如果将大量的.CHK后缀改为.mp3后缀的问题进行了编写。 主要是&#xff0c;现在网上的批量修改后缀的软件竟然要开会…

基于微信小程序的校园二手交易平台/Java的二手交易网站/基于Javaweb校园二手商品交易系统(附源码)

摘 要 使用校园二手交易平台管理校园二手物品交易&#xff0c;不仅实现了智能化管理&#xff0c;还提高了管理员的管理效率&#xff0c;用户查询的功能也需要校园二手交易平台来提供。 设计校园二手交易平台是毕设的目标&#xff0c;校园二手交易平台是一个不断创新的系统&…

大话成像公众号文章阅读学习(二)--- 下一代 AI-ISP会更好

系列文章目录 文章目录 系列文章目录前言一、AI-ISP1.1 定义与工作原理1.2 应用场景 二、展望总结 前言 这篇是 下一代 AI-ISP会更好 文章地址&#xff1a;https://mp.weixin.qq.com/s/N3YnkXF_stvP6k3jRTKCpQ 一、AI-ISP 1.1 定义与工作原理 定义&#xff1a;AI-ISP&#…

【docker】x host+ 是干嘛用的

先说结论&#xff1a; xhost 首先&#xff0c;xhost是允许外部应用程序连接到主机的X显示器&#xff1a; 其次&#xff0c;-v是挂载目录&#xff0c;用于在容器文件系统中挂载主机的X11显示器&#xff0c;以呈现输出视频。 那么x11显示器具体指的是什么&#xff1f; 在计算机…

谁说只有车载HMI界面?现在工业类的HMI界面UI也崛起了

谁说只有车载HMI界面&#xff1f;现在工业类的HMI界面UI也崛起了 引言 艾斯视觉作为行业ui设计和前端开发领域的从业者&#xff0c;其观点始终认为&#xff1a;工业自动化和智能化水平不断提高&#xff0c;人机界面&#xff08;Human-Machine Interface&#xff0c;简称HMI&a…