网页的血液——javascript

news2024/11/26 4:32:04

JavaScript 基础知识概述

1. JavaScript 介绍

JavaScript 是一种高级的、解释型的编程语言,它是一种基于对象的、事件驱动的语言,它允许开发者创建动态的网页。JavaScript 是一种脚本语言,它可以嵌入到 HTML 中,或者作为外部文件引入。JavaScript 是一种客户端脚本语言,它在浏览器中运行,用于控制网页的行为。

2. JavaScript 变量声明

在 JavaScript 中,变量用于存储数据值。JavaScript 中的变量是通过 varletconst 关键字声明的。

  • var 关键字用于声明一个变量,它的作用域是整个函数。
  • let 关键字用于声明一个块级作用域的变量。
  • const 关键字用于声明一个常量,它的值不能改变。
var name = "John"; // 使用 var 声明变量
let age = 30; // 使用 let 声明变量
const PI = 3.14; // 使用 const 声明常量

3. JavaScript 中的数据类型

JavaScript 中的数据类型主要有以下几种:

  • Number:用于表示数字,包括整数和浮点数。
  • String:用于表示文本。
  • Boolean:用于表示真(true)或假(false)。
  • Object:用于表示对象,可以包含属性和方法。
  • Null:表示空值或不存在的对象。
  • Undefined:表示未定义的变量。
  • Symbol:表示唯一的标识符。
let num = 10; // Number
let str = "Hello"; // String
let isTrue = true; // Boolean
let obj = {name: "John", age: 30}; // Object
let nothing = null; // Null
let notDefined; // Undefined
let sym = Symbol("id"); // Symbol

4. JavaScript 中的运算符

JavaScript 提供了多种运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符等。

  • 算术运算符:用于执行数学运算,如 +-*/%
  • 比较运算符:用于比较两个值,如 ==!=><>=<=
  • 逻辑运算符:用于逻辑操作,如 &&(与)、||(或)、!(非)。
  • 赋值运算符:用于赋值,如 =+=-=*=/=
let x = 10;
let y = 20;

// 算术运算符
let sum = x + y; // 30
let diff = x - y; // -10

// 比较运算符
let isEqual = x == y; // false
let isGreater = x > y; // false

// 逻辑运算符
let isTrue = true && false; // false

// 赋值运算符
x += 5; // x 现在是 15

5. JavaScript 中的流程控制

JavaScript 提供了多种流程控制语句,包括 ifelseswitchforwhiledo...while

  • if…else:用于条件判断。
  • switch:用于多条件判断。
  • for:用于重复执行代码块。
  • while:用于当条件为真时重复执行代码块。
  • do…while:用于当条件为真时重复执行代码块,且至少执行一次。
// if...else
if (x > y) {
 console.log("x is greater than y");
} else {
 console.log("x is not greater than y");
}

// switch
switch (x) {
 case 10:
    console.log("x is 10");
    break;
 case 20:
    console.log("x is 20");
    break;
 default:
    console.log("x is not 10 or 20");
}

// for
for (let i = 0; i < 5; i++) {
 console.log(i);
}

// while
let i = 0;
while (i < 5) {
 console.log(i);
 i++;
}

// do...while
let j = 0;
do {
 console.log(j);
 j++;
} while (j < 5);

6. JavaScript 中的函数

函数是一段可以重复使用的代码,它可以接受输入参数,并返回一个值。JavaScript 中的函数可以通过 function 关键字声明。

function greet(name) {
 return "Hello, " + name;
}

console.log(greet("John")); // 输出 "Hello, John"

7. JavaScript 中的匿名函数

匿名函数是没有名称的函数,它们通常用作函数表达式或作为函数的参数。

// 函数表达式
let greet = function(name) {
 return "Hello, " + name;
};

console.log(greet("John")); // 输出 "Hello, John"

// 作为函数参数
setTimeout(function() {
 console.log("This message is displayed after 2 seconds");
}, 2000);

14. DOM 元素操作 HTML

DOM(Document Object Model)是一个编程接口,用于 HTML 和 XML 文档。它提供了一个结构化的文档表示,并定义了一种方式使程序能够访问和改变文档的内容、结构和样式。

获取元素

可以通过多种方式获取 DOM 元素:

  • 通过 ID:使用 document.getElementById() 方法。
  • 通过标签名:使用 document.getElementsByTagName() 方法。
  • 通过类名:使用 document.getElementsByClassName() 方法。
  • 通过选择器:使用 document.querySelector()document.querySelectorAll() 方法。
// 通过 ID 获取元素
var elementById = document.getElementById("myId");

// 通过标签名获取元素
var elementsByTagName = document.getElementsByTagName("p");

// 通过类名获取元素
var elementsByClassName = document.getElementsByClassName("myClass");

// 通过选择器获取元素
var elementBySelector = document.querySelector(".myClass");
var elementsBySelector = document.querySelectorAll(".myClass");

修改元素

可以通过 DOM 元素的属性和方法来修改元素的内容、属性和样式。

// 修改元素的文本内容
elementById.textContent = "New text content";

// 修改元素的 HTML 内容
elementById.innerHTML = "<b>New HTML content</b>";

// 修改元素的属性
elementById.setAttribute("class", "newClass");

// 修改元素的样式
elementById.style.color = "blue";

15. DOM 相关元素

DOM 提供了一系列的元素和对象,用于表示文档的结构和内容。

  • 节点(Node):文档中的所有内容都是节点,如元素、属性、文本等。
  • 元素(Element):文档中的 HTML 标签。
  • 属性(Attribute):元素的属性。
  • 文本(Text):元素或属性中的文本内容。
// 获取元素节点
var elementNode = document.getElementById("myId");

// 获取文本节点
var textNode = elementNode.firstChild;

// 获取属性节点
var attributeNode = elementNode.getAttributeNode("class");

16. DOM 的创建与删除

可以通过 DOM 方法来创建和删除元素。

创建元素

// 创建新的 div 元素
var newDiv = document.createElement("div");

// 设置新元素的文本内容
newDiv.textContent = "New div element";

// 将新元素添加到 body 中
document.body.appendChild(newDiv);

删除元素

// 获取要删除的元素
var elementToRemove = document.getElementById("elementToRemove");

// 删除元素
elementToRemove.parentNode.removeChild(elementToRemove);

通过以上介绍,我们可以看到 DOM 提供了一种结构化的方式来表示和操作 HTML 文档的内容、结构和样式。通过 DOM,开发者可以动态地创建、修改和删除文档的元素,从而实现复杂的网页交互和动态内容更新。

上面就是对java的介绍,内容较为全面,喜欢可以给个关注哦。
在这里插入图片描述

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

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

相关文章

一篇商业稿件值千元,我的过稿经验大公开

撰写过上百篇企业和品牌稿件&#xff0c;甚至一篇商业稿件可值千元&#xff0c;可能很多人还不太相信&#xff0c;事实就是真的会有很多的企业和品牌愿意为此买单&#xff0c;是因为稿件带来的价值也是无法衡量的&#xff0c;直接给产品或是品牌带来更多的曝光甚至转化。今天伯…

一种新的基于STT-MRAM的时域内存计算单元

大数据、物联网和人工智能等技术的进步揭示了传统冯诺依曼的瓶颈架构&#xff0c;导致高能耗和有限的内存带宽。内存计算&#xff08;IMC通过直接在内存中进行计算&#xff0c;提高了能效&#xff0c;提供了一个有前景的解决方案计算。现有的基于时域&#xff08;TD&#xff09…

vue+elementUI搭建动态表头的表格

前提&#xff1a;以下代码是vue2项目结合elementUi完成的 数据结构 后端传来的数据是两个list&#xff0c;一个表头的list&#xff0c;一个表格内容的list // 表头 headTableAtts: [{ columnLabel: 姓名, columnName: name },{ columnLabel: 年龄, columnName: age },{ colu…

算法学习——LeetCode力扣动态规划篇4(377. 组合总和 Ⅳ、322. 零钱兑换、279. 完全平方数、139. 单词拆分)

算法学习——LeetCode力扣动态规划篇4 377. 组合总和 Ⅳ 377. 组合总和 Ⅳ - 力扣&#xff08;LeetCode&#xff09; 描述 给你一个由 不同 整数组成的数组 nums &#xff0c;和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。 题目数据保…

苹果手机系统文件浏览技巧:实现高效的文件查找与管理

​ 目录 引言 用户登录工具和连接设备 查看设备信息&#xff0c;电池信息 查看硬盘信息 硬件信息 查看 基带信息 销售信息 电脑可对手机应用程序批量操作 运行APP和查看APP日志 IPA包安装测试 注意事项 引言 苹果手机与安卓手机不同&#xff0c;无法直接访问系统文件…

linux shell命令(进程管理、用户管理)

一、进程的概念 主要有两点&#xff1a; 1.进程是一个实体。每一个进程都有它自己的地址空间&#xff0c;一般情况下&#xff0c;包括文本区域&#xff08;text region&#xff09;、数据区域&#xff08;data region&#xff09;和堆栈&#xff08;stack region&#xff09;…

浅显易懂的简单说一下jvm内存模型

说起JVM大家都知道&#xff0c;它是运行java代码的基础。那么关于JVM 内存模型是不是很模糊 我用通俗易懂的方式说一下 我们这里先介绍 JVM 堆内存 它有两大块 包括 新生代内存&#xff0c;和老年代内存 。 为啥分为这两块&#xff0c; 你可以这样理解&#xff0c;&#xff…

【图论】【拓扑排序】1857. 有向图中最大颜色值

本文涉及的知识点 图论 拓扑排序 LeetCode1857. 有向图中最大颜色值 给你一个 有向图 &#xff0c;它含有 n 个节点和 m 条边。节点编号从 0 到 n - 1 。 给你一个字符串 colors &#xff0c;其中 colors[i] 是小写英文字母&#xff0c;表示图中第 i 个节点的 颜色 &#xf…

代码随想录算法训练营DAY14|C++二叉树Part.1|二叉树的递归遍历、二叉树的迭代遍历、二叉树的统一迭代法

文章目录 二叉树的递归遍历思路CPP代码 二叉树的迭代遍历思路前序遍历后序遍历后序遍历 二叉树的统一迭代法 二叉树的递归遍历 144.二叉树的前序遍历、145.二叉树的后序遍历、94.二叉树的中序遍历 文章讲解&#xff1a;二叉树的递归遍历 视频讲解&#xff1a;每次写递归都要靠直…

寒冬已逝,“量子春天”正来

最近&#xff0c;全球对量子技术领域的私人投资有所下降&#xff0c;引发了一些观点认为这个领域可能正逐渐衰退。 政治家、资助者和投资者并不总是以科学为关注焦点。然而&#xff0c;某些科技领域偶尔会成为热点&#xff0c;正如20世纪50年代核能技术的兴起&#xff0c;那时人…

ios 之 netty版本swiftNio(socket创建)

SwiftNio 简介 用于高性能协议服务器和客户端的事件驱动、无阻塞的网络应用程序框架。 SwiftNIO是一个跨平台异步事件驱动的网络应用程序框架&#xff0c;用于快速开发可维护的高性能协议服务器和客户端。 这就像Netty&#xff0c;但是为Swift写的。 Xcode引入swiftNio 在实…

联诚发2024第二季度高质量发展工作推进会议顺利召开

4月1日上午&#xff0c;联诚发LCF以“稳中创新•产业升级•高质量发展”为主题的第二季度企业高质量发展工作推进大会在联诚发深圳总部隆重召开。会议总结上一季度的工作成果&#xff0c;分析研判当前形势&#xff0c;谋划部署下一季度工作&#xff0c;团结动员公司全体职工凝心…

Web3:数字化社会的下一步

随着技术的不断进步和互联网的发展&#xff0c;我们正逐渐迈入一个全新的数字化社会阶段。在这个新的时代&#xff0c;Web3作为数字化社会的重要组成部分&#xff0c;将发挥着举足轻重的作用。本文将探讨Web3在数字化社会中的意义、特点以及对未来发展的影响。 1. 重新定义数字…

设计模式——行为型——责任链模式Chain Of Responsibility

请求类 public class ApproverRequest {private int type;//请求批准的类型private float price;//请求的金额private int id;//请求的编号 } 审批人抽象类 public abstract class ApproverPerson {protected ApproverPerson next;protected String name;//审批过程public a…

【好书推荐4】图机器学习

【好书推荐4】图机器学习 写在最前面编辑推荐内容简介作者简介目录前言/序言本书读者内容介绍 &#x1f308;你好呀&#xff01;我是 是Yu欸 &#x1f30c; 2024每日百字篆刻时光&#xff0c;感谢你的陪伴与支持 ~ &#x1f680; 欢迎一起踏上探险之旅&#xff0c;挖掘无限可能…

nut-ui中的menu 菜单组件的二次封装

这个菜单组件 一般可以直接用到项目里 如果复用性不强的话 直接使用 但是有一个问题 如果很多地方都需要用到这个组件 我们可以把这个组件二次封装一下 <template><div class"cinema-search-filter-component"><nut-menu><template #icon>&…

交流耦合和直流耦合

一、 AC和DC定义 在选择输入模式时&#xff0c;可能选择不同的耦合方式会影响到数据中的频率成分。大多数信号都有AC成分和DC成分&#xff0c;DC成分是0Hz的部分&#xff0c;对应时域信号中的直流分量&#xff08;或称为直流偏置&#xff09;&#xff0c;AC成分是信号中的交变部…

VCRUNTIME140_1.dll丢失是怎么回事?多种解决方法帮你搞定

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“vcruntime140_1.dll文件丢失”。那么&#xff0c;这个文件是什么&#xff1f;它的作用是什么&#xff1f;当它丢失时&#xff0c;会提示什么样的错误信息呢&#xff1f;本文将详细介绍vcru…

谷粒商城实战(009 缓存-分布式锁)

Java项目《谷粒商城》架构师级Java项目实战&#xff0c;对标阿里P6-P7&#xff0c;全网最强 总时长 104:45:00 共408P 此文章包含第158p-第p165的内容 分布式锁 原理和使用 使用下shell对产生的命令进行发送 查看 -> 撰写 -> 撰写栏 idea 选中的代码提取成方法 加锁…