5分钟JavaScript快速入门

目录
一.JavaScript基础语法
二.JavaScript的引入方式
三.JavaScript中的数组
四.BOM对象集合
五.DOM对象集合
六.事件监听
使用addEventListener()方法添加事件监听器
使用onX属性直接指定事件处理函数
使用removeEventListener()方法移除事件监听器
一.JavaScript基础语法
JavaScript是一种高级编程语言,用于开发网页和网络应用程序。它是一种动态类型语言,可以在客户端和服务器端运行。JavaScript主要用于改善用户体验、实现动态网页、与用户进行交互以及处理数据等功能。它具有易学易用的特点,被广泛用于网页开发和移动应用开发。
JavaScript是一种弱类型、动态的编程语言,主要用于在网页上添加交互功能。以下是JavaScript的一些基本语法要点:
- 变量声明:使用 var、let 或 const 来声明变量,例如:
var x = 10; let y = 5; const z = 3.14; - 数据类型:支持数值(整数和浮点数)、字符串、布尔值、数组、对象等多种数据类型
-
条件语句:使用 if-else 语句进行条件判断,例如:
if (x > 5) {console.log("x大于5"); } else {console.log("x小于等于5"); } - 循环语句:使用 for、while 或 do-while 语句进行循环操作,例如:
for (var i = 0; i < 5; i++) {console.log(i); } - 函数定义:使用 function 关键字定义函数,例如:
function add(a, b) {return a + b; } - 事件处理:可以通过添加事件监听器来响应用户的操作,例如:
document.getElementById("myButton").addEventListener("click", function() {console.log("按钮被点击了"); }); - 对象和属性:可以使用对象字面量或构造函数来创建对象,并使用点操作符访问对象的属性,例如:
var person = {name: "张三",age: 20 }; console.log(person.name);
二.JavaScript的引入方式
JavaScript可以通过以下几种方式引入:
- 内联方式(Inline):直接在HTML页面中嵌入JavaScript代码,使用
<script>标签将JavaScript代码放置在HTML文件的<head>或<body>标签内。例如:<head><script>// JavaScript代码</script> </head>这种方式适用于较小的脚本或临时性的代码
- 外部文件方式(External):将JavaScript代码保存在一个独立的外部文件中,然后使用
<script>标签的src属性将文件引入到HTML页面中。例如:<head><script src="script.js"></script> </head>在外部文件中编写JavaScript代码,可以提高代码的可维护性和重用性。
- 内部方式(Internal):将JavaScript代码直接嵌入HTML文件的
<script>标签内,但不使用src属性引入外部文件。例如:<head><script>// JavaScript代码</script> </head>这种方式适用于较小的脚本或临时性的代码,与内联方式类似。
根据具体的需求和项目规模,选择合适的引入方式可以提高代码的可维护性和效率。
三.JavaScript中的数组
JavaScript中的数组是一种特殊的对象,用于存储多个值。它可以包含不同类型的数据,如数字、字符串、布尔值等。数组使用方括号 [] 来定义,元素之间用逗号分隔。
创建数组可以使用以下语法创建一个新的数组:
var arr = []; // 空数组
var arr = [1, 2, 3]; // 包含三个元素的数组
var arr = new Array(); // 使用构造函数创建空数组
var arr = new Array(1, 2, 3); // 使用构造函数创建包含三个元素的数组
访问数组元素 可以使用索引来访问数组中的元素,索引从 0 开始。例如:
var arr = [1, 2, 3];
console.log(arr[0]); // 输出 1
console.log(arr[1]); // 输出 2
console.log(arr[2]); // 输出 3
var arr = [1, 2, 3];
console.log(arr[0]); // 输出 1
console.log(arr[1]); // 输出 2
console.log(arr[2]); // 输出 3
数组长度 可以使用 length 属性来获取数组的长度。例如:
var arr = [1, 2, 3];
console.log(arr.length); // 输出 3
JavaScript 提供了一些内置的数组方法,用于对数组进行操作,如增加、删除、修改元素,获取子数组等。常用的方法包括:
push():向数组末尾添加一个或多个元素,并返回新的长度pop():删除并返回数组的最后一个元素shift():删除并返回数组的第一个元素unshift():向数组开头添加一个或多个元素,并返回新的长度splice():删除、替换或添加元素,或者同时进行多个操作slice():返回数组的一个子数组concat():将多个数组合并为一个新数组join():将数组的所有元素连接成一个字符串reverse():反转数组的元素顺序sort():对数组的元素进行排序
四.BOM对象集合
BOM(Browser Object Model)是指浏览器对象模型,是JavaScript中与浏览器交互的一组对象的集合。
BOM提供了一系列的对象,用于操作浏览器窗口和浏览器本身。其中一些重要的BOM对象包括:
- `window`对象:代表浏览器窗口。它是BOM的顶层对象,可以访问和操作浏览器窗口的属性和方法,比如窗口的大小、位置、打开新的窗口等。
- `navigator`对象:提供有关浏览器的信息,比如浏览器的名称、版本、所使用的操作系统等。还可以通过`navigator`对象检测用户的浏览器类型和功能支持情况。
- `location`对象:代表当前页面的URL信息。可以通过`location`对象获取当前页面的URL、跳转到其他页面、修改页面的URL等。
- `screen`对象:提供了有关用户屏幕的信息,比如屏幕的宽度、高度、颜色深度等。
除了上述对象,BOM还提供了其他一些对象和API,用于处理浏览器的历史记录、cookie、定时器等功能。
我们可以通过使用上述的对象来直接对浏览器进行操作,就拿我们最常用的 window对象 来举例:
Window属性:
history:对history对象的只读引用
location:用于窗口或框架的Location对象
navigation:对Navigator对象的只读引用
Window方法:
alert():显示警告窗口
confirm():显示确认对话框
setInterval():周期的调用函数或计算表达式
setTimeout():指定毫秒数后调用函数或计算表达式
五.DOM对象集合
DOM(文档对象模型)在JavaScript中是一个重要的概念。它是浏览器用来表示网页文档的对象模型,通过DOM,JavaScript可以访问和操作网页中的元素和属性。
DOM以树状结构表示HTML文档的层次关系。每个HTML元素都被表示为一个DOM节点,节点之间的关系通过父子关系来描述。根节点是整个文档,它的子节点是HTML元素,而每个HTML元素又可以有自己的子节点。
JavaScript可以使用一些内置的方法和属性来操作DOM节点,常用的方法包括:getElementById():根据元素的id属性获取DOM节点。
- getElementsByClassName():根据元素的class属性获取DOM节点。
- getElementsByTagName():根据元素的标签名获取DOM节点。
- querySelector():使用CSS选择器来获取DOM节点。
- createElement():创建一个新的DOM元素节点。
- appendChild():将一个DOM节点添加为另一个节点的子节点。
- removeChild():从DOM树中移除一个节点。
除了以上方法,还有很多其他方法和属性可用于操作DOM。通过这些方法和属性,JavaScript可以读取和修改DOM节点的属性、样式和内容,还可以创建、删除和移动DOM节点。这样,JavaScript可以实现与用户交互、动态更新网页内容等功能。
六.事件监听
在JavaScript中,事件监听是一种常见的技术,用于在特定的DOM元素上监听特定的事件,并执行相应的代码。以下是一些常用的方法和语法:
使用addEventListener()方法添加事件监听器
element.addEventListener(event, function, useCapture);
element是要添加事件监听器的DOM元素。event是要监听的事件名称,如click、mouseover等。function是事件发生时要执行的函数。useCapture是一个可选参数,指定事件是在捕获阶段还是冒泡阶段触发,默认为false(冒泡阶段)。
使用onX属性直接指定事件处理函数
element.onX = function;
element是要添加事件监听器的DOM元素。X是事件的名称,如click、mouseover等。function是事件发生时要执行的函数。
// 在按钮上添加点击事件监听器
var button = document.getElementById("myButton");
button.onclick = function() {console.log("Button clicked!");
};
使用removeEventListener()方法移除事件监听器
element.removeEventListener(event, function, useCapture);
element是要移除事件监听器的DOM元素。event是要移除的事件名称。function是要移除的事件处理函数。useCapture是一个可选参数,指定事件是在捕获阶段还是冒泡阶段触发,默认为false(冒泡阶段)。
// 移除按钮上的点击事件监听器
button.removeEventListener("click", handleClick);
本次的分享就到此为止了,希望我的分享能给您带来帮助,也欢迎大家三连支持,你们的点赞就是博主更新最大的动力!
如有不同意见,欢迎评论区积极讨论交流,让我们一起学习进步!
有相关问题也可以私信博主,评论区和私信都会认真查看的,我们下次再见![]()
相关文章:
5分钟JavaScript快速入门
目录 一.JavaScript基础语法 二.JavaScript的引入方式 三.JavaScript中的数组 四.BOM对象集合 五.DOM对象集合 六.事件监听 使用addEventListener()方法添加事件监听器 使用onX属性直接指定事件处理函数 使用removeEventListener()方法移除事件监听器 一.JavaScript基础…...
如何使用IP代理解决亚马逊账号IP关联问题?
亚马逊账号IP关联问题是指当同一个IP地址下有多个亚马逊账号进行活动时,亚马逊会将它们关联在一起,从而可能导致账号被封禁或限制。 为了避免这种情况,许多人选择使用IP代理。 IP代理为什么可以解决亚马逊IP关联问题? IP代理是…...
opencv之cvScalar
CV_INLINE CvScalar cvScalar( double val0, double val1 CV_DEFAULT(0), double val2 CV_DEFAULT(0), double val3 CV_DEFAULT(0)) { CvScalar scalar; scalar.val[0] val0; scalar.val[1] val1; scalar.val[2] val2; scalar.val[3] val3; return scalar; } 该函数的…...
通过 GithubActions 实现自动化部署 Hexo
一、在自己电脑上新建一个文件夹,打开 git bash here,输入以下命令 # 生成秘钥 ssh-keygen -f github-deploy-key之后会生成两个文件, 一个私钥文件为:github-deploy-key; 另一个公钥文件为:github-deploy-key.pub …...
如何快速导出vercel project中的环境变量
我在vercel中集成了某些插件或者链接了数据库,要如何快速的导出这些环境变量呢? 具体方法如下: npm i -g vercelvercel linkvercel env pull .env.local首先是安装vercel然后登录vercel 最后拉取环境变量到.env.local...
Java-8函数式编程设计-Functional-Interface
Java 8函数式编程设计-Functional-Interface 我自己的理解,函数式编程对用户最大的价值是促使开发者养成模块化编程的习惯,代码可读性和维护性提高很多。 通过阅读JDK 8的 java.util.function 和 java.util.stream 包源码,意在理解Java的函数…...
Linux TCP 参数设置
文章目录 Linux TCP 参数设置参考 Linux TCP 参数设置 查询tcp相关内核参数 sysctl -a|grep ipv4|grep -i --color tcp[rootlocalhost ~]# sysctl -a|grep ipv4|grep -i --color tcp sysctl: reading key "net.ipv6.conf.all.stable_secret" sysctl: reading key &…...
Dubbo之消费端服务RPC调用
在消费端服务是基于接口调用Provider端提供的服务,所以在消费端并没有服务公共接口的实现类。 使用过程中利用注解DubboReference将目标接口作为某个类的字段属性,在解析该类时获取全部字段属性并单独关注解析存在注解DubboReference的字段属性。通过步…...
报表控件Stimulsoft 新版本2024.1中,功能区工具栏新功能
今天,我们将讨论Stimulsoft Reports、Dashboards 和 Forms 2024.1版本中的一项重要创新 - 在一行中使用功能区工具栏的能力。 Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于创建报表和仪表板的通用工具集。该产品包括用于WinF…...
零样本带解释性的医学大模型
带解释性的医学大模型 提出背景解法拆解方法的原因对比以前解法 零样本带解释性的医学大模型如何使用CLIP模型和ChatGPT来进行零样本医学图像分类用特定提示查询ChatGPT所生成的医学视觉特征描述相似性得分在不同症状上的可视化,用于解释模型的预测注意力图的可视化…...
英文输入法(C 语言)
题目来自于博主算法大师的专栏:最新华为OD机试C卷AB卷OJ(CJavaJSPy) https://blog.csdn.net/banxia_frontend/category_12225173.html 题目 主管期望你来实现英文输入法单词联想功能,需求如下: 依据用户输入的单词前…...
万众一心 · 喜赢未来,2023宇凡微年会暨阳朔之旅
宇凡微 万众一心 喜赢未来 2024宇凡微年会暨阳朔之旅 在一起,做时间的朋友,迈向第一 前言 INTRODUCTION 感恩宇凡微过去七年砥砺路,携手宇凡微未来七年新征程。2024年1月24日~1月27日,宇凡微在广西桂林阳朔举办了以“感恩有…...
【Spring】 AOP面向切面编程
文章目录 AOP是什么?一、AOP术语名词介绍二、Spring AOP框架介绍和关系梳理三、Spring AOP基于注解方式实现和细节3.1 Spring AOP底层技术组成3.2 初步实现3.3 获取通知细节信息3.4 切点表达式语法3.5 重用(提取)切点表达式3.6 环绕通知3.7 切…...
R语言入门笔记2.6
描述统计 分类数据与顺序数据的图表展示 为了下面代码便于看出颜色参数所对应的值,在这里先集中介绍, col1是黑色,2是粉红,3是绿色,4是天蓝,5是浅蓝,6是紫红,7是黄色,…...
PS人像处理磨皮插件
PS人像处理插件 Portraiture 人像照片进行自动磨皮和平滑处理Arcsoft Portrait 3 自动化人像磨皮软件 批量处理功能DR增强插件 含有磨皮滤镜Beautify Panel 高级质感磨皮插件PT Portrait 人像检测自动完成磨皮优化Retouch4me AI智能人能磨皮美容软件 1、Retouch4me_Heal…...
类型转换(C++)
一、C语言中的类型转换 在C语言中,如果赋值运算符左右两侧类型不同,或者形参与实参类型不匹配,或者返回值类型与 接收返回值类型不一致时,就需要发生类型转化,C语言中总共有两种形式的类型转换:隐式类型 …...
2.23数据结构
单向循环链表 创建单向循环链表,创建节点 ,头插,按位置插入,输出,尾删,按位置删除功能 //main.c #include "loop_list.h" int main() {loop_p Hcreate_head();insert_head(H,12);insert_head(…...
c++笔记理解
1.封装 (1)构造函数不是必须在的 可以通过行为修改属性 (2)private和protected区别在于继承那里要学 (3)类默认是私有,struct是共有 私有的好处:控制数据的有效性,意…...
二进制部署k8s集群之cni网络插件
目录 k8s的三种网络模式 pod内容器之间的通信 同一个node节点中pod之间通信 不同的node节点的pod之间通信 flannel网络插件 flannel的三种工作方式 VxLAN host-GW UDP Flannel udp 模式 Flannel VXLAN 模式 flannel插件的三大模式的总结 calico网络插件 k8s 组网…...
二维矩阵子集的最大值
登录—专业IT笔试面试备考平台_牛客网 正好遇到了 对于一维,我们只需要贪一次 int ans -1E9; int suf -1E9; for (int i 0; i < n; i) {if (i && (a[i] - a[i - 1]) % 2 0) {suf 0;}suf std::max(suf, 0) a[i];ans std::max(ans, suf); } ans就是最大值…...
BiLSTM时间序列预测实战:用Python搞定股票价格预测(附完整代码)
BiLSTM金融时间序列预测:从理论到实战的Python完整指南 金融市场如同汹涌的海浪,价格波动背后隐藏着无数投资者的决策与情绪。对于量化分析师和算法交易者而言,准确预测这些波动意味着巨大的商业价值。传统的时间序列分析方法如ARIMA在面对非…...
跨平台开源工具OptiScaler:释放显卡潜能的性能优化指南
跨平台开源工具OptiScaler:释放显卡潜能的性能优化指南 【免费下载链接】OptiScaler DLSS replacement for AMD/Intel/Nvidia cards with multiple upscalers (XeSS/FSR2/DLSS) 项目地址: https://gitcode.com/GitHub_Trending/op/OptiScaler 你是否曾因显卡…...
人脸识别系统如何利用图像质量评估提升准确率?5个实战场景解析
人脸识别系统如何利用图像质量评估提升准确率?5个实战场景解析 在光线昏暗的便利店监控画面中,一位戴着口罩的顾客突然抬头看向摄像头——这个瞬间能否被准确识别,往往取决于系统对人脸图像质量的实时判断能力。图像质量评估(FQA&…...
变压器差动保护MATLAB/simulink仿真 变压器差动保护仿真➕报告
变压器差动保护MATLAB/simulink仿真 变压器差动保护仿真➕报告第一部分:Simulink 仿真模型搭建指南 以下是变压器差动保护的Simulink模型搭建步骤及核心代码,包含模型参数设置、差动逻辑实现和仿真分析: 一、Simulink模型搭建 打开MATLAB&…...
libvirt 有哪些命令
除了 virsh 外,还有很多有意思的命令。virt-manager 用于打开 libvirt 交互的界面除了连接本地电脑,也可以访问远程电脑的 libvirtd 服务virt-clone 快速克隆一个虚拟机。在 virt-manager 界面上也集成了这个功能。如下图,就是这么简单快捷&a…...
华硕笔记本CPU过热?G-Helper降压调优终极指南帮你降温10℃
华硕笔记本CPU过热?G-Helper降压调优终极指南帮你降温10℃ 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops. Control tool for ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, TUF, Strix, Scar and other models 项目…...
3步实现Mac微信防撤回:零配置本地化解决方案
3步实现Mac微信防撤回:零配置本地化解决方案 【免费下载链接】WeChatIntercept 微信防撤回插件,一键安装,仅MAC可用,支持v3.7.0微信 项目地址: https://gitcode.com/gh_mirrors/we/WeChatIntercept 告别消息遗憾࿱…...
告别龟速下载!一个Shell脚本搞定GFZ非潮汐大气负载数据(附站点坐标文件模板)
极速批量获取GFZ非潮汐大气负载数据的Shell脚本实战指南 在GNSS数据处理和地球物理研究中,获取高精度的非潮汐大气负载(NTAL)数据是分析站点位移的关键环节。德国地学研究中心(GFZ)作为全球权威机构,其提供的NTAL数据产品被广泛应用于科研和工程领域。然…...
OpCore Simplify:三步搞定黑苹果EFI配置的智能工具
OpCore Simplify:三步搞定黑苹果EFI配置的智能工具 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为黑苹果的复杂EFI配置而烦恼吗&am…...
告别默认ResNet-50:为你的病理图像特征提取,升级CLAM+CONCH v1.5的保姆级指南
告别默认ResNet-50:为你的病理图像特征提取,升级CLAMCONCH v1.5的保姆级指南 在病理图像分析领域,特征提取的质量直接影响下游任务的性能表现。许多研究者发现,使用默认的ImageNet预训练ResNet-50模型提取的特征,往往…...
