【JavaScript】金丹期功法

目录

  • 数组
    • 声明数组
    • 数组的基本使用
    • 遍历数组
    • 案例:求数组中的最值
    • 数组操作
      • 查询数据
      • 修改数据
      • 新增数据
      • 案例:数组筛选
      • 删除数据
  • 案例:渲染柱形图

数组

数组(Array)是一种可以按顺序保存数据的数据类型

场景:如果有多个数据可以用数组保存起来,然后放到一个变量中,方便管理

声明数组

声明语法:

let 数组名 = [数据1,数据2,...,数据n]

代码示例:

let names = ['张三','李四','王五','赵六']

数组的基本使用

获取数组元素

代码示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>第一个JS程序</title>
</head>
<body><script>let names = ['张三','李四','王五','赵六']document.write(names)document.write(names[0]) // 张三</script>
</body>
</html>

结果如下:

在这里插入图片描述

注意事项:

  • 数组是按顺序保存,所以每个数据都有自己的编号
  • 计算机中的编号从 0 开始,所以张三的编号为 0,以此类推
  • 在数组中,数据的编号也叫索引或下标
  • 数组可以存储任意类型的数据

获取数组的长度

代码示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>第一个JS程序</title>
</head>
<body><script>let names = ['张三','李四','王五','赵六']document.write('数组的长度为' + names.length)</script>
</body>
</html>

结果如下:

在这里插入图片描述

遍历数组

代码示例:

<!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>let arr = ['刘德华','张学友','周星驰','黎明','郭富城','周华健','周杰伦','王力宏','陶喆']for(let i = 0;i < arr.length;i++){document.write(arr[i] + `&nbsp`) }</script>
</body>
</html>

结果如下:

在这里插入图片描述

案例:求数组中的最值

代码示例:

<!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>let arr = [10,9,45,123,4,86]// 求数组的最大值let max = arr[0]// 遍历数组for(let i = 0; i < arr.length; i++){// 如果当前的元素比max大,就把当前元素赋值给maxif(arr[i] > max){// 把当前元素赋值给maxmax = arr[i]}}// 输出最大值document.write(`数组的最大值是${max}`)</script>
</body>
</html>

结果如下:

在这里插入图片描述

数组操作

数组本质是数据集合,操作数组就是增删改查

查询数据

获取数组元素

代码示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>第一个JS程序</title>
</head>
<body><script>let names = ['张三','李四','王五','赵六']document.write(names)document.write(names[0]) // 张三</script>
</body>
</html>

结果如下:

在这里插入图片描述

遍历数组

代码示例:

<!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>let arr = ['刘德华','张学友','周星驰','黎明','郭富城','周华健','周杰伦','王力宏','陶喆']for(let i = 0;i < arr.length;i++){document.write(arr[i] + `&nbsp`) }</script>
</body>
</html>

结果如下:

在这里插入图片描述

修改数据

通过赋新值覆盖旧值来修改数组

代码示例:

<!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>let arr = [0,0,0,0,0,0,0,0,0,0]let num = 1for(let i = 0;i < 10;i++){arr[i] += numnum++}document.write(arr)</script>
</body>
</html>

结果如下:

在这里插入图片描述

新增数据

利用 数组.push() 将一个或多个元素添加到数组末尾,并返回该数组的新长度

代码示例:

<!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>let arr = ['国破山河在','城春草木深','感时花溅泪','恨别鸟惊心']document.write(`新增前的数组:${arr}<br>`)document.write(`新增前的数组长度:${arr.length}<br>`)arr.push('烽火连三月','家书抵万金','白头搔更短','浑欲不胜簪')document.write(`新增后的数组:${arr}<br>`)document.write(`新增后的数组长度:${arr.length}<br>`)</script>
</body>
</html>

结果如下:

在这里插入图片描述

利用 arr.unshift() 将一个或多个元素添加到数组的开头,并返回该数组的新长度

代码示例:

<!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>let arr = ['竹喧归浣女','莲动下渔舟','随意春芳歇','王孙自可留']document.write(`新增前的数组:${arr}<br>`)document.write(`新增前的数组长度:${arr.length}<br>`)arr.unshift('空山新雨后','天气晚来秋','明月松间照','清泉石上流')document.write(`新增后的数组:${arr}<br>`)document.write(`新增后的数组长度:${arr.length}<br>`)</script>
</body>
</html>

结果如下:

在这里插入图片描述

案例:数组筛选

将数组[90, 65, 70, 97, 78, 89, 80]中大于等于 80 的元素选出来,放入新数组

代码示例:

<!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>let arr = [90, 65, 70, 97, 78, 89, 80]let newArr = []for(let i = 0; i < arr.length; i++){if(arr[i] >= 80){newArr.push(arr[i])}}document.write(newArr)</script>
</body>
</html>

结果如下:

在这里插入图片描述

删除数据

使用 arr.pop() 从数组中删除最后一个元素,并返回该元素的值

使用 arr.shift() 从数组中删除第一个元素,并返回该元素的值

代码示例:

<!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>let arr = [1,2,3,4,5,6,7,8,9]document.write(`原数组: ${arr}<br>`)document.write(`pop删除的元素是: ${arr.pop()}<br>`)document.write(`shift删除的元素是: ${arr.shift()}<br>`)document.write(`删除后的数组: ${arr}<br>`)</script>
</body>
</html>

结果如下:

在这里插入图片描述

使用 arr.splice() 删除指定元素

  • 语法:arr.splice(start, deleteCount)
  • start:起始位置,deleteCount:删除几个元素

代码示例:

<!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>let arr = [1,2,3,4,5,6,7,8,9]document.write(`原数组: ${arr}<br>`)document.write(`splice删除的元素 ${arr.splice(3,3)}<br>`)document.write(`删除后的数组 ${arr}<br>`)</script>
</body>
</html>

结果如下:

在这里插入图片描述

案例:渲染柱形图

代码示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>*{margin: 0;padding: 0;}.box{display: flex;width: 700px;height: 300px;border-left: 1px solid pink;border-bottom: 1px solid pink;margin: 50px auto;justify-content: space-around;align-items: flex-end;text-align: center;}.box div{display: flex;width: 50px;background-color: pink;flex-direction: column;justify-content: space-between;}.box div span{margin-top: -20px; }.box div h4{margin-bottom: -35px;width: 70px;margin-left: -10px;}</style>
</head>
<body><!-- <div class="box"><div style="height: 123px;"><span>123</span><h4>第1季度</h4></div><div style="height: 156px;"><span>156</span><h4>第2季度</h4></div><div style="height: 189px;"><span>189</span><h4>第3季度</h4></div><div style="height: 200px;"><span>200</span><h4>第4季度</h4></div></div> --><script>let arr = [];for(let i = 1; i <= 4; i++){arr.push(prompt(`请输入第${i}季度的销售额`)) }document.write(`<div class="box">`)for(let i = 0; i < arr.length; i++){document.write(`<div style="height: ${arr[i]}px;"><span>${arr[i]}</span><h4>第${i+1}季度</h4></div>`)}document.write(`</div>`)</script>
</body>
</html>

结果如下:

屏幕录制 2025-03-26 150619

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

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

相关文章

学习本地部署DeepSeek的过程(基于LM Studio)

除了使用Ollama部署DeepSeek&#xff0c;还可以使用LM Studio部署DeepSeek&#xff0c;后者是一款允许用户在本地计算机上运行大型语言模型&#xff08;LLMs&#xff09;的桌面应用程序&#xff0c;旨在简化本地模型的使用&#xff0c;无需云端连接或复杂配置即可体验 AI 功能。…

AOA与TOA混合定位,MATLAB例程,自适应基站数量,三维空间下的运动轨迹,滤波使用EKF

本代码实现了一个基于 到达角(AOA) 和 到达时间(TOA) 的混合定位算法,结合 扩展卡尔曼滤波(EKF) 对三维运动目标的轨迹进行滤波优化。代码通过模拟动态目标与基站网络,展示了从信号测量、定位解算到轨迹滤波的全流程,适用于城市峡谷、室内等复杂环境下的定位研究。 文…

C++:函数(通识版)

一、函数的基础 1.什么是函数&#xff1f;&#xff08;独立的功能单位&#xff09; 函数是C中封装代码逻辑的基本单元&#xff0c;用于执行特定任务。 作用&#xff1a;代码复用、模块化、提高可读性。 2、函数的基本结构 返回类型 函数名(参数列表) {// 函数体return 返回值…

STL之map和set

1. 关联式容器 vector、list、deque、 forward_list(C11)等&#xff0c;这些容器统称为序列式容器&#xff0c;因为其底层为线性序列的数据结构&#xff0c;里面存储的是元素本身。 关联式容器也是用来存储数据的&#xff0c;与序列式容器不同的是&#xff0c;其里面存储的是结…

虚拟机(一):Java 篇

虚拟机&#xff08;一&#xff09;&#xff1a;Java 篇 虚拟机&#xff08;二&#xff09;&#xff1a;Android 篇 架构 运行时数据区&#xff1a; 栈&#xff1a; 堆&#xff1a; 堆&#xff1a;通过new创建的对象都在堆中分配。OutOfMemoryError TLAB(Thread Local All…

无线安灯按钮盒汽车零部件工厂的故障告警与人员调度专家

在汽车零部件制造领域&#xff0c;生产线故障与物料短缺等问题往往引发连锁反应&#xff0c;导致停机损失与成本激增。传统人工巡检与纸质工单模式已难以满足高效生产需求&#xff0c;而无线安灯按钮盒的智能化应用&#xff0c;正成为破解这一难题的关键利器。 一、精准告警&am…

二叉树相关算法实现:判断子树与单值二叉树

目录 一、判断一棵树是否为另一棵树的子树 &#xff08;一&#xff09;核心思路 &#xff08;二&#xff09;代码实现 &#xff08;三&#xff09;注意要点 二、判断一棵树是否为单值二叉树 &#xff08;一&#xff09;核心思路 &#xff08;二&#xff09;代码实现…

数据结构初阶-二叉树链式

目录 1.概念与结构 2.二叉数链式的实现 2.1遍历规则 2.2申请内存空间 2.3手动构建一棵二叉树 2.4二叉树结点的个数 2.5二叉树叶子结点的个数 2.6二叉树第K层结点个数 2.7二叉树的高度 2.8二叉树中查找值为x的结点 2.9二叉树的销毁 3.层序遍历 3.1概念 3.2层序遍历…

SpringMVC拦截器

SpringMVC拦截器 什么是拦截器拦截器和过滤器的区别SpringMVC 拦截器的工作原理拦截器的配置拦截器的配置主要有两种方式XML 配置方式Java配置方式 创建一个拦截器拦截器的应用场景拦截器的执行顺序 什么是拦截器 SpringMVC 的拦截器&#xff08;Interceptor&#xff09;是指在…

cocos creator 笔记-路边花草

版本&#xff1a;3.8.5 实现目标&#xff1a;给3d道路生成路边景观花草 在场景下创建一个节点&#xff0c;我这里种植两种花草模型&#xff0c;兰花和菊花&#xff0c;所以分别在节点下另创建两个节点&#xff0c;为了静态合批。 1.将花草模型分别拖入场景中&#xff0c;制作…

YoloV8训练和平精英人物检测模型

概述 和平精英人物检测&#xff0c;可以识别游戏中所有人物角色&#xff0c;并通过绘制框将人物选中&#xff0c;训练的模型仅仅具有识别功能&#xff0c;可以识别游戏中的视频、图片等文件&#xff0c;搭配Autox.js可以推理&#xff0c;实现实时绘制&#xff0c;但是对手机性…

达梦改密码时不想看到明文

有时&#xff0c;需要修改用户密码 但不想让别人看到你的密码明文 最简单的是用manager工具 找到用户&#xff0c;点击右键&#xff0c;选择modify 这里很明显被掩盖为黑点了&#xff0c;放心输入即可 想通过命令行怎么办&#xff1f; 这不&#xff0c;密码全被看到了 用变…

3. 轴指令(omron 机器自动化控制器)——>MC_GearInPos

机器自动化控制器——第三章 轴指令 17 MC_GearInPos变量▶输入变量▶输出变量▶输入输出变量 功能说明▶时序图▶重启运动指令▶多重启动运动指令▶异常 示例程序▶动作示例▶梯形图▶结构文本(ST) MC_GearInPos 设定主轴和从轴间的齿轮比&#xff0c;进行电子齿轮动作。 指定…

【教学类-58-14】黑白三角拼图12——单页1页图。参考图1页6张(黑白、彩色)、板式(无圆点、黑圆点、白圆点)、宫格2-10、张数6张,适合集体操作)

背景需求&#xff1a; 基于以下两个代码&#xff0c;设计一个单页1页黑白三角、彩色三角&#xff08;包含黑点、白点、无点&#xff09;的代码。 【教学类-58-12】黑白三角拼图10&#xff08;N张参考图1张操作卡多张彩色白块&#xff0c;适合个别化&#xff09;-CSDN博客文章…

pytest-xdist 进行高效并行自动化测试

pytest-xdist 的核心功能是通过多进程分发测试任务&#xff0c;每个进程独立运行测试&#xff0c;确保测试隔离。2025 年 3 月 25 日&#xff0c;pytest-xdist 在 GitHub 上已有超过 1,200,000 次下载&#xff0c;表明其在测试社区中的广泛接受。 在自动化测试中&#xff0c;随…

18502 字符串哈希匹配字符串

18502 字符串哈希匹配字符串 ⭐️难度&#xff1a;中等 &#x1f31f;考点&#xff1a;字符串hash &#x1f4d6; &#x1f4da; import java.util.Arrays; import java.util.LinkedList; import java.util.Queue; import java.util.Scanner;public class Main {static int…

通过git文件查看大模型下载链接的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

Linux设备永久挂载

一、fstab文件详解 下面是我虚拟机中的一个fstab文件,可以看到有四行配置,每一行有6个字段,下面我会对字段的含义进行讲解。 /etc/fstab 文件包含了如下字段,通过空格或Tab分隔: file systems:要挂载的分区或存储设备;dir:挂载位置;type:要挂载设备或分区的文件系统…

Linux系统初始化脚本

Rocky、Almalinux、CentOS、Ubuntu、Debian、openEuler、AnolisOS、OpenCloudOS、openSUSE、银河麒麟&#xff08;Kylin Server&#xff09;和统信&#xff08;Uos Server&#xff09;系统初始化脚本 Shell脚本源码地址&#xff1a; Gitee&#xff1a;https://gitee.com/raymo…

多智能体融合(Multi-Agent Fusion)

多智能体融合&#xff08;Multi-Agent Fusion&#xff09;是指在多智能体系统&#xff08;MAS, Multi-Agent System&#xff09;中&#xff0c;多个智能体&#xff08;Agent&#xff09;通过协作、竞争或共享信息&#xff0c;实现全局最优的智能决策和任务执行。该方法广泛应用…