当前位置: 首页 > news >正文

JavaScript基础语法three

1.for语句

for(变量起始值;终止条件;变量变化量){

//循环体

}

案例:打印九九乘法表

<!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>span {display: inline-block;width: 60px;padding: 5px 10px;border: 1px solid pink;margin: 2px;border-radius: 5px;box-shadow: 2px 2px 2px rgba(255, 192, 203);}</style>
</head>
​
<body><script>for (let i = 1; i <= 9; i++) {for (let j = 1; j <= i; j++) {document.write(`<span>${j}×${i}=${i * j}</span>`)}document.write('<br>')}</script>
</body>
​
</html>

2.数组

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

 <script>//字面量声明数组let arr =[1,2,'pink',true]//使用Array构造函数let array=new Array(1,2,3)</script>

数据基本使用:

数组求和:

 <script>//数组求和let arr = [2, 6, 1, 7, 4]let sum = 0for (let i = 0; i < arr.length; i++) {sum += arr[i]}document.write(`和为:${sum}<br>`)document.write(`平均值为:${sum / arr.length}`)</script>

求数组最大值最小值:

<script>let arr = [2, 6, 1, 77, 52, 25, 7]let max = arr[0]let min = arr[0]for (let i = 1; i < arr.length; i++) {if (max < arr[i]) {//max<arr[i]?max=arr[i]:maxmax = arr[i]}if (min > arr[i]) {min = arr[i]}}document.write(`数组中最大值为:${max},最小值为:${min}`)</script>

操作数组:

查询:数组[下标]

修改:数组[下标]=新值

增:

数组名.push(新增的内容),追加到数组末尾,返回数组新长度

数组名.unshift(新增的内容),追加到数组开头

 <script>let arr = ['pink', 'hot', 'smile']document.write(arr.push('silence'))//4document.write('<br>')document.write(arr)//pink,hot,smile,silencedocument.write('<br>')arr.unshift('apple')document.write(arr)//apple,pink,hot,smile,silence</script>
 <script>//筛选数组中大于10的元素let arr=[2,0,6,1,77,0,52,0,25,7]let newArr=[]for(let i=0;i<arr.length;i++){if(arr[i]>10){newArr.push(arr[i])}}document.write(`大于10的元素为${newArr}`)</script>

删除:

数组名.pop(),删除数组最后一个元素,并返回该元素的值

数组名.shift(),删除数组第一个元素

数组名.splice(操作的下标,删除的个数)

 <script>let arr = ['red', 'pink', 'bule', 'green']document.write(arr.pop())//greendocument.write('<br>')document.write(arr)//red,pink,bluedocument.write('<br>')document.write(arr.shift())//reddocument.write('<br>')//document.write(arr.splice(0, 1))//从索引号为0的位置开始删,只删除一个pink//document.write(arr.splice(1))//从索引号为1的位置开始删</script>

综合案例:生成数据柱状图

<!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>123<script>let arr = []for (let i = 1; i <= 4; i++) {// let num=prompt(`请输入第${i}季度的数据:`)// arr.push(num)arr.push(prompt(`请输入第${i}季度的数据:`))}console.log(arr)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>

冒泡排序:

 <script>let arr = [5, 4, 3, 2, 1]for (let i = 0; i < arr.length - 1; i++) {for (let j = 0; j < arr.length - 1; j++) {//第一个数大于第二个数才交换if (arr[j] > arr[j + 1]) {let temp = arr[j]arr[j] = arr[j + 1]arr[j + 1] = temp}}}console.log(arr);</script>
//arr.sort()升序排序arr.sort(function(a,b){return a-b})//降序排序arr.sort(function(a,b){return b-a}) 

http://www.dtcms.com/a/336850.html

相关文章:

  • 时序数据库 Apache IoTDB:从边缘到云端Apache IoTDB 全链路数据管理能力、部署流程与安全特性解读
  • UTMatrix VS VideoLingo 到底哪个好?
  • 在openEuler系统中如何查看文件夹下每个文件的大小
  • 从零到GPT:Transformer如何引领大模型时代
  • 基于C语言实现的HRV分析方法 —— 与Kubios和MATLAB对比
  • 力扣70:爬楼梯
  • Java基础(九):Object核心类深度剖析
  • 【Linux指南】gcc/g++编译器:从源码到可执行文件的全流程解析
  • DELL服务器 R系列 IPMI的配置
  • Linux 编译器 gcc 与 g++
  • Linux磁盘阵列
  • 开源Verilog仿真即波形模拟工具iVerilog初步教程
  • 香港数据合集:建筑物、手机基站、POI、职住数据、用地类型
  • Java 中表示数据集的常用集合类
  • 【快速解决】Redis配置问题以及解决方法
  • 世界模型之自动驾驶
  • 实战架构思考及实战问题:Docker+‌Jenkins 自动化部署
  • 基于Android的随身小管家APP的设计与实现/基于SSM框架的财务管理系统/android Studio/java/原生开发
  • Rust 教程之简介000
  • 【网络安全实验报告】实验六: 病毒防护实验
  • Rust 异步中的 Waker
  • reGeorg、dnscat2--安装、使用
  • moe并行
  • 【Linux系统】进程间通信:System V IPC——消息队列和信号量
  • 灯哥FOC笔记(3) --FOC开环程序原理
  • 轨迹优化 | 基于边界值问题(BVP)的无约束路径平滑(附ROS C++/Python仿真)
  • 第二章:C语言数据类型和变量
  • PyTorch数据处理工具箱详解|深入理解torchvision与torch.utils.data
  • Gemini CLI 系统配置小结
  • ±2cm精度破壁者:有鹿机器人如何重写清洁行业规则?