js之数组

简介: js之数组

数组的概念

数组指一组数据的集合,其中的每个数据被称作元素,在数组中可以存放任意类型的元素。数组是一种将一组数据存储在单个变量名下的优雅方式。

创建数组

利用new 关键字创建数组

// [] 是可选的,key 表示要存储的值,值与值之间用 , 号隔开

let    =  new  Array(key,key,key  );

// 示例:创建了一个名为 arr 的空数组

let  arr  =  new  Array();

利用数组字面量创建数组

// 使用数组字面量方式创建数组

let    =  [key,key,key  ];

// 数组中可以存放任意类型的数据

let  arr  =  ['fan',  true,  17.5];

访问数组元素

/ 定义数组

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

// 获取数组中的第 2 个元素

console.log(arr[1]);  //  李四

// 如果访问数组时没有和索引值对应的元素(数组越界)

console.log(arr[4]);

//  返回值为 undefined

遍历数组

// 数组的长度,默认情况下等于元素的个数

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

console.log(arr.length);  //  4

//  当我们数组里面的元素发生了变化,length 属性跟着一起变

arr = ['张三','李四','王五','赵六','孙七'];

console.log(arr.length);  //  5

新增元素

数组中可以通过以下方式在数组的末尾插入新元素。

let  arr  =  ['张三','李四','王五','赵六']; arr[arr.length]  =  '孙七';

console.log(arr);

翻转数组

// 取数组的最后一位的下标arr.length  -  1),从后往前循环

// 我们采取 递减的方式 i--

let  arr  =  ['张三',  '李四',  '王五',  '赵六',  '孙七'];

let  newArr  =  [];

for(let  i  =  arr.length  -  1;  i  >=  0;  i--)  {

newArr[newArr.length]  =  arr[i]

}

console.log(newArr);

隔开数组

//  数组转换为字符串  "|"  或其他符号分割

// 需要一个新变量用于存放转换完的字符串 str

// 遍历取出数据加到 str 后面然后加上分隔符

let  arr  =  ['张三',  '李四',  '王五',  '赵六',  '孙七'];

let  str  =  '';

for(let  i  =  0;  i  <  arr.length;  i++)  {

str  +=  arr[i]  +  '|';

}

console.log(str);

//  数组转字符串系统有封装好的方法  join

// 我们现在的目的是为了熟悉循环和数组

筛选数组

//  1.  筛选数组  大于 10 的元素选出来放到新数组中

let  arr  =  [2,  0,  6,  1,  78,  0,  52,  0,  25,  7];

let  newArr  =  []; let  j  =  0;

for  (let  i  =  0;i  <  arr.length; i++){

if  (arr[i]  >=  10)  {

newArr[j]  =  arr[i]; j++;

}

}

console.log(newArr);  //  78  52  25

// 第二种方法 利用数组长度的可变性

let  arr  =  [2,  0,  6,  1,  78,  0,  52,  0,  25,  7];

let  newArr  =  [];

for  (let  i  =  0;i  <  arr.length;  i++){

if  (arr[i]  >=  10)  {

newArr[newArr.length]  =  arr[i];

}

}

console.log(newArr);  //  78  52  25

冒泡排序

冒泡排序是编程中最经典也是最简单的一种排序方法,它是通过重复访问对两个相邻的值进行比较,如果 A 值大于 (或小于,根据需求进行判断) B 值,则将两个值的位置进行互换,每一轮对比都可以确定出最大 (或最小) 的值,在下一轮访问时略过这个值,直到排序完成。由于在互换的过程中,最大 (或最小) 的那个值会慢慢的交换到顶部,像汽水一样,故名“冒泡排序”。

let  arr  =  [3,9,5,1,8,2]

for(let  i  =  0;  i  <  arr.length  -  1;  i++)  {

for(let  j  =  0;  j  <  arr.length  -  1  -  i;  j++)  {

if  (arr[j]  >  arr[j+1]){

let  num  =  arr[j]; arr[j]  =  arr[j+1]; arr[j+1]  =  num;

}

}

}

console.log(arr);  //  1  2  3  5  8  9

多维数组构建与遍历

// 一维数组

let  arr1  =  [1,2,3];

// 二维数组

let  arr2  =  [[11,  12,  13],  [21,  22,  23],  [31,  32,  33]];

// 二维数组的取值

console.log(arr2[1][2]);  //  23

这样的数组被称为 二维数组 取值需要两个下标,下标一确定取那个一维数组,下标二确定取一维数组中的那个值

// 二维数组

let  arr2  =  [[11,  12,  13],  [21,  22,  23],  [31,  32,  33]];

// 循环出二维数组中的每个值

for(let  i  =  0;  i  <  arr2.length;  i++){

for(let  j  =  0;  j  <  arr2[i].length;  j++){

console.log(arr2[i][j]);

}

}

目录
相关文章
|
2月前
|
自然语言处理 前端开发 JavaScript
🛠️ JavaScript数组操作指南:20个精通必备技巧🚀
本文详细介绍了 JavaScript 中的 20 个高效数组操作技巧,涵盖了从基本的添加、移除元素,到数组转换和去重等高级操作。强调了不可变性的重要性,提供了清晰的代码示例,帮助开发者编写更整洁和高效的代码。无论是新手还是经验丰富的开发者,这些技巧都将显著提升您的编码能力,使您在项目中更具竞争力。
39 2
|
2月前
|
JavaScript 前端开发 测试技术
JS都有哪些操作数组的方法
JS都有哪些操作数组的方法
29 3
|
2月前
|
JavaScript
js删除数组中已知下标的元素
js删除数组中已知下标的元素
46 4
|
2月前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
49 1
|
2月前
|
JavaScript 前端开发 Java
【javaScript数组,函数】的基础知识点
【javaScript数组,函数】的基础知识点
28 5
|
2月前
|
JavaScript 前端开发 索引
探索JavaScript数组:基础
探索JavaScript数组:基础
20 3
|
2月前
|
JavaScript 前端开发 索引
JS 删除数组元素( 5种方法 )
JS 删除数组元素( 5种方法 )
66 1
|
2月前
|
JavaScript 前端开发
如何在JS中声明一个数组
如何在JS中声明一个数组
30 0
|
2月前
|
存储 JavaScript 前端开发
JavaScript Array(数组) 对象
JavaScript Array(数组) 对象
29 3
|
3月前
|
JavaScript 前端开发
js删除数组最后一个元素
js删除数组最后一个元素
下一篇
DataWorks