5分钟JavaScript快速入门

news/发布时间2024/5/19 14:31:25


目录

一.JavaScript基础语法

 二.JavaScript的引入方式

三.JavaScript中的数组

四.BOM对象集合

五.DOM对象集合

六.事件监听

使用addEventListener()方法添加事件监听器

使用onX属性直接指定事件处理函数

使用removeEventListener()方法移除事件监听器


一.JavaScript基础语法

JavaScript是一种高级编程语言,用于开发网页和网络应用程序。它是一种动态类型语言,可以在客户端和服务器端运行。JavaScript主要用于改善用户体验、实现动态网页、与用户进行交互以及处理数据等功能。它具有易学易用的特点,被广泛用于网页开发和移动应用开发。

JavaScript是一种弱类型、动态的编程语言,主要用于在网页上添加交互功能。以下是JavaScript的一些基本语法要点:

  1. 变量声明:使用 var、let const 来声明变量,例如:
    var x = 10;
    let y = 5;
    const z = 3.14;
    
  2. 数据类型:支持数值(整数和浮点数)、字符串、布尔值、数组、对象等多种数据类型
  3. 条件语句:使用 if-else 语句进行条件判断,例如:

    if (x > 5) {console.log("x大于5");
    } else {console.log("x小于等于5");
    }
    
  4. 循环语句:使用 for、while do-while 语句进行循环操作,例如:
    for (var i = 0; i < 5; i++) {console.log(i);
    }
    
  5. 函数定义:使用 function 关键字定义函数,例如:
    function add(a, b) {return a + b;
    }
    
  6. 事件处理:可以通过添加事件监听器来响应用户的操作,例如:
    document.getElementById("myButton").addEventListener("click", function() {console.log("按钮被点击了");
    });
    
  7. 对象和属性:可以使用对象字面量或构造函数来创建对象,并使用点操作符访问对象的属性,例如:
    var person = {name: "张三",age: 20
    };
    console.log(person.name);
    

 二.JavaScript的引入方式

JavaScript可以通过以下几种方式引入:

  1. 内联方式(Inline):直接在HTML页面中嵌入JavaScript代码,使用<script>标签将JavaScript代码放置在HTML文件的<head><body>标签内。例如:
    <head><script>// JavaScript代码</script>
    </head>
    

    这种方式适用于较小的脚本或临时性的代码

  2. 外部文件方式(External):将JavaScript代码保存在一个独立的外部文件中,然后使用<script>标签的src属性将文件引入到HTML页面中。例如:
    <head><script src="script.js"></script>
    </head>
    

    在外部文件中编写JavaScript代码,可以提高代码的可维护性和重用性。

  3. 内部方式(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对象包括:

  1. `window`对象:代表浏览器窗口。它是BOM的顶层对象,可以访问和操作浏览器窗口的属性和方法,比如窗口的大小、位置、打开新的窗口等。
  2. `navigator`对象:提供有关浏览器的信息,比如浏览器的名称、版本、所使用的操作系统等。还可以通过`navigator`对象检测用户的浏览器类型和功能支持情况。
  3. `location`对象:代表当前页面的URL信息。可以通过`location`对象获取当前页面的URL、跳转到其他页面、修改页面的URL等。
  4. `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节点。

  1. getElementsByClassName():根据元素的class属性获取DOM节点。
  2. getElementsByTagName():根据元素的标签名获取DOM节点。
  3. querySelector():使用CSS选择器来获取DOM节点。
  4. createElement():创建一个新的DOM元素节点。
  5. appendChild():将一个DOM节点添加为另一个节点的子节点。
  6. removeChild():从DOM树中移除一个节点。

除了以上方法,还有很多其他方法和属性可用于操作DOM。通过这些方法和属性,JavaScript可以读取和修改DOM节点的属性、样式和内容,还可以创建、删除和移动DOM节点。这样,JavaScript可以实现与用户交互、动态更新网页内容等功能。


六.事件监听

在JavaScript中,事件监听是一种常见的技术,用于在特定的DOM元素上监听特定的事件,并执行相应的代码。以下是一些常用的方法和语法:

使用addEventListener()方法添加事件监听器

element.addEventListener(event, function, useCapture);
  • element是要添加事件监听器的DOM元素。
  • event是要监听的事件名称,如clickmouseover等。
  • function是事件发生时要执行的函数。
  • useCapture是一个可选参数,指定事件是在捕获阶段还是冒泡阶段触发,默认为false(冒泡阶段)。

使用onX属性直接指定事件处理函数

element.onX = function;
  • element是要添加事件监听器的DOM元素。
  • X是事件的名称,如clickmouseover等。
  • 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);



 本次的分享就到此为止了,希望我的分享能给您带来帮助,也欢迎大家三连支持,你们的点赞就是博主更新最大的动力!如有不同意见,欢迎评论区积极讨论交流,让我们一起学习进步!有相关问题也可以私信博主,评论区和私信都会认真查看的,我们下次再见

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

如若内容造成侵权/违法违规/事实不符,请联系编程老四网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

[python]python监听、操作键盘鼠标库pynput详细教程

1.【pynput简介】pynput简介&#xff0c;官方是这样介绍自己的&#xff1a; pynput这个库&#xff0c;允许你控制、监听输入设备。例如监听鼠标、键盘的各种操作。 This library allows you to control and monitor input devices.It contains subpackages for each type of …

spring框架介绍

spring 1.优点 1&#xff09;针对接口编程&#xff0c;解耦合 2&#xff09;aop&#xff1a;变向切面编程&#xff0c;动态增加功能 3&#xff09;方便集成框架&#xff0c;mybatis,hibernate,strust等 4&#xff09;降低j2ee接口的使用难度 2.spring是干什么的 管理bean及bean…

IT廉连看——C语言——循环语句

IT廉连看——C语言——循环语句 循环语句分为三种&#xff1a; while for do while 一、while循环 我们已经掌握了&#xff0c;if语句&#xff1a; if(条件)语句; 当条件满足的情况下&#xff0c;if语句后的语句执行&#xff0c;否则不执行。 但是这个语句只会执行一次…

Spring篇----第四篇

系列文章目录 文章目录 系列文章目录前言一、区分构造函数注入和 setter 注入二、spring 中有多少种 IOC 容器?三、区分 BeanFactory 和 ApplicationContext。四、列举 IoC 的一些好处。前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大…

Web基础02 -CSS+CSS3

目录 一、CSS 1.CSS盒模型 2.元素宽度计算 3.元素高度计算 4.宽度和高度的度量单位 5.设置元素的极限宽高 6.CSS属性&#xff08;第二部分&#xff09; &#xff08;1&#xff09;纯色背景 &#xff08;2&#xff09;图片背景 &#xff08;3&#xff09;列表样式 &am…

互联网加竞赛 大数据房价预测分析与可视

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 大数据房价预测分析与可视 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;4分 该项目较为新颖&#xff0c;适合…

回归预测 | Matlab实现SSA-BiLSTM-Attention麻雀算法优化双向长短期记忆神经网络融合注意力机制多变量回归预测

回归预测 | Matlab实现SSA-BiLSTM-Attention麻雀算法优化双向长短期记忆神经网络融合注意力机制多变量回归预测 目录 回归预测 | Matlab实现SSA-BiLSTM-Attention麻雀算法优化双向长短期记忆神经网络融合注意力机制多变量回归预测预测效果基本描述程序设计参考资料 预测效果 基…

精通Django模板(模板语法、继承、融合与Jinja2语法的应用指南)

模板&#xff1a; 基础知识&#xff1a; ​ 在Django框架中&#xff0c;模板是可以帮助开发者快速⽣成呈现给⽤户⻚⾯的⼯具模板的设计⽅式实现了我们MVT中VT的解耦(M: Model, V:View, T:Template)&#xff0c;VT有着N:M的关系&#xff0c;⼀个V可以调⽤任意T&#xff0c;⼀个…

【MySQL】数据类型(常见类型)-- 详解

一、数据类型分类 二、数值类型 1、tinyint 类型 在 MySQL 中&#xff0c;整型可以指定是有符号的和无符号的&#xff0c;默认是有符号的。 有符号&#xff1a; 插入数据越界测试&#xff1a; 在 MySQL 表中建立属性列时&#xff0c;我们可以发现列名称在前&#xff0c;类型在…

【Unity自制手册】Unity—Camera相机跟随的方法大全

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;Uni…

springboot网站开发02-接入持久层框架mybatisPlus

springboot网站开发02-接入持久层框架mybatisPlus&#xff01;经过上一小节内容分享&#xff0c;我们的项目嵌套模式框架搭建好了&#xff0c;下面就是开始编辑具体的业务代码了&#xff0c;我们使用到了持久层框架是mybatisPlus插件。下面是一些具体的植入框架的操作步骤。 第…

nginx-------- 高性能的 Web服务端 (三) 验证模块 页面配置

一、http设置 1.1 验证模块 需要输入用户名和密码 htpasswd 此命令来自于 httpd-tools 包&#xff0c;如果没有安装 安装一下即可 也可以安装httpd 直接yum install httpd -y 也一样 第一次生成文件htpasswd -c 文件路径 姓名 交互式生成密码 htpasswd -bc 文…

【经验分享】分类算法与聚类算法有什么区别?白话讲解

经常有人会提到这个问题&#xff0c;从我个人的观点和经验来说2者最明显的特征是&#xff1a;分类是有具体分类的数量&#xff0c;而聚类是没有固定的分类数量。 你可以想象一下&#xff0c;分类算法就像是给你一堆水果&#xff0c;然后告诉你苹果、香蕉、橙子分别应该放在哪里…

高并发Server的基石:reactor反应堆模式

业务开发同学只关心业务处理流程。但是我们开发的程序都是运行服务端server上&#xff0c;服务端server接收到IO请求后&#xff0c;是如何处理请求并最终进入业务流程的呢&#xff1f;这里不得不提到reactor反应堆模型。nginx tomcat redis nodejs dubbo等软件的网络处理模型都…

线阵相机参数介绍之轴编码器控制

1.1 功能介绍 编码器是将检测对象的运动与相机拍摄取图相匹配的设备&#xff0c;也即检测对象运动一定距离&#xff0c;相机就拍摄一定行高的图像。 编码器会将检测对象的实际位移转换为固定数量电信号。例如&#xff1a;编码器的精度是2000p/r,该参数的含义是编码器每转一圈输…

【Azure 架构师学习笔记】- Azure Databricks (10) -- UC 使用

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (9) – UC权限 在前面的文章&#xff1a;【Azure 架构师学习笔记】- Azure Databricks (6) - 配置Unity Catalog中演示了如何配置一个UC。 本文…

js 文件预览 在窗口设置“自定义名称”

1. 最近需要做一个点击表格某一列的标题&#xff0c;预览当前文件的一个小功能。本身功能很简单&#xff0c;点击该标题&#xff0c;预览文件&#xff0c;那么拿到他对应的文件地址&#xff0c;在浏览器打开就行了。 2. 事实如此&#xff0c;使用window.open(url, _blank);就行…

从MATLAB到MWORKS,科学计算与系统建模仿真平台的中国选项

“中国需要自主的科学计算与系统建模仿真平台。” 工业软件是所有复杂系统研发设计、仿真验证和数字制造的必备工具&#xff0c;已经成为衡量一个国家工业竞争力的核心指标。在传统工业软件领域&#xff0c;我们一直处于落后状态&#xff0c;尤其是研发设计类工业软件&#xff…

【MATLAB】CEEMD_ MFE_SVM_LSTM 神经网络时序预测算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 CEEMD_MFE_SVM_LSTM神经网络时序预测算法是一种结合了多种先进技术的复杂预测方法&#xff0c;旨在提高时序预测的准确性和稳定性。下面是对该算法的详细介绍&#xff1a; CEEMD&#xff…

紫光同创初使用

芯片PGC2KG-6LPG144 1、安装好软件接&#xff0c;加载license,有两个&#xff0c;与电脑MAC地址绑定的 2、正常使用后&#xff0c;新建个工程&#xff0c;配置管脚Tools→UCE 3、程序中有些信号被软件认为是时钟信号&#xff0c;会报错&#xff08;时钟输入I0约束在非专用时钟…
推荐文章