JavaScript基础 第三天

1.for循环

2.数组的基本使用和操作

3.数组排序

一.for循环

① 语法:把声明起始值,循环条件,变量值写到一起,让人一目了然

javascript 复制代码
for(变量起始值;终止条件;变量变化量) {

    // 循环体
}



举例:
for (let i = 0; i <= 100; i++) {
  document.write(`我今年${i}岁了<br>`)
}

② 循环嵌套

javascript 复制代码
        for (let i = 1; i <= row; i++) {
            for (let j = 1; j <= col; j++) {
                document.write('⭐')
            }
            document.write('<br>')
        }

二.数组

1.数组的概念以及基本使用

2.操作数组

2.1 数组的概念以及基本使用

  • 数组:是一种可以按顺序保存数据的数据类型
  • 可以将多个数据保存在一个变量中,管理起来非常方便
  • 声明语法
javascript 复制代码
// 1.数组字面量
let 数组名 = [数据1, 数据2, .... 数据n]

// 2.使用new Array 构造函数声明
let arr = new Array(1, 2, 3, 4)
  • 数组是按顺序保存的,所以每个数据都有自己的编号,数据的编号也叫索引或者下标
  • 数组可以存放任意类型的数据
  • 取值语法: 数组名[下标]
  • 遍历数组
javascript 复制代码
for (let i = 0; i < arr.length; i++) {
   console.log(arr[i])
}

2.2 操作数组

① 修改数组

javascript 复制代码
let arr = ['pink', 'red', 'green']
arr[0] = 'chen'
for (let i = 0; i < arr.length; i++) {
   arr[i] += '老师'
}

② 数组添加新的数据

数组.push(新增的内容)

  • 将一个或多个元素添加到数组的末尾,并返回该数组的新长度
  • 语法: arr.push(元素1,元素2,元素3... 元素n)
  • 返回值:返回新的数组长度length
javascript 复制代码
 let arr = ['pink', 'hotpink']
// 可以加多个,追加到末尾
 arr.push('deeppink', 'lightpink')

数组.unshift(新增的内容)

  • 将一个或者多个元素添加到数组的开头,并且返回数组的新长度
  • 语法:arr.unshift(元素1,元素2,元素3, 元素4)
  • 返回值:返回新的数组长度length
javascript 复制代码
arr.unshift('deeppink', 'lightpink')

③ 删除数组中的元素

数组.pop()

  • 删除数组中的最后一个元素,并返回该元素的值,一次只能删一个
  • 语法: arr.pop()
  • 返回值: 返回被删除元素的值
javascript 复制代码
let arr = ['red', 'blue', 'green']
//删除最后一个元素
arr.pop()

数组.shift()

  • 删除第一个元素,返回该元素的值,一次只能删一个
  • 语法:arr.shift()
  • 返回值:返回被删除的元素的值
javascript 复制代码
// 删除第一个元素
arr.shift()

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

  • 删除指定元素
  • 语法: arr.splice(起始位置, 删除几个元素)
  • 如果第二个参数省略,则默认从指定的起始位置删除到最后
javascript 复制代码
// 删除指定元素 splice(起始位置-索引号,删除几个)
 arr.splice(1, 1);
// 只写一个,从索引号的位置开始,删除到最后
 arr.splice(1)

三.排序

冒泡算法思想:

① 两层循环

② 第一层循环:一共需要的趟数

③ 第二层循环:每一趟交换次数

④ 交换两个相邻变量

javascript 复制代码
        for (let i = 0; i < arr.length; i++) {
            for (let j = 0; j < arr.length - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    let temp = arr[j]
                    arr[j] = arr[j + 1]
                    arr[j + 1] = temp
                }
            }
        }

数组排序方法

javascript 复制代码
// 默认升序
arr.sort()

// 升序
arr.sort(function (a, b) {
  return a - b
})

// 降序
arr.sort(function (a, b) {
  return b - a
})
相关推荐
悟能不能悟5 分钟前
java HttpServletRequest 设置header
java·开发语言
啊花是条龙8 分钟前
《产品经理说“Tool 分组要一条会渐变的彩虹轴,还要能 zoom!”——我 3 步把它拆成 1024 个像素》
前端·javascript·echarts
云栖梦泽9 分钟前
易语言运维自动化:中小微企业的「数字化运维瑞士军刀」
开发语言
刘975312 分钟前
【第23天】23c#今日小结
开发语言·c#
郝学胜-神的一滴22 分钟前
线程同步:并行世界的秩序守护者
java·linux·开发语言·c++·程序人生
superman超哥23 分钟前
Rust 移动语义(Move Semantics)的工作原理:零成本所有权转移的深度解析
开发语言·后端·rust·工作原理·深度解析·rust移动语义·move semantics
青茶36025 分钟前
【js教程】如何用jq的js方法获取url链接上的参数值?
开发语言·前端·javascript
superman超哥34 分钟前
Rust 所有权转移在函数调用中的表现:编译期保证的零成本抽象
开发语言·后端·rust·函数调用·零成本抽象·rust所有权转移
xiaowu08035 分钟前
C# 把dll分别放在指定的文件夹的方法
开发语言·c#
mg66842 分钟前
0基础开发学习python工具_____用 Python + Pygame 打造绚丽烟花秀 轻松上手体验
开发语言·python·学习·pygame