JavaScript数组

发布时间 2023-12-23 10:17:23作者: 和哗

数组

在JavaScript开发中,数组主要用于临时存储多个数据,可以存放不同类型的数据。

数组的定义

数组的定义有两种方式:

①使用Array对象使用new关键字实现,语法如下:

//定义一个空数组
let  array =  new  Array();

//定义元素值位数值的数组
let array = new  Array(1,2,3,1.3);

//定义元素值为字符串的数组
let array = new Array('a','b','c');

//定义元素值为复杂类型的数组
let array = new Array(12,1.3,'abc',true,null);

//传入一个整数值,即使定义数组的长度
let array = new Array(5);//表示定义一个长度为5的数组

注意一点:在定义数组的时候可以省略new关键字。

②使用[]定义数组

使用[]和使用Array对象定义数组的方式类似,将new Array()替换为 [] 即可,语法如下

语法:

//定义一个空数组
let  array = []

//定义元素值为数值的数组
let  nums = [1,2,3];

// 定义元素值为字符串的数组
var fruits = ['apple', 'pear', 'orange']; 

// 定义元素值为复杂类型的数组
var complex = ['hello', 1, true, null]; 

// 定义部分元素值为空的数组
var empty = [1, , , 4, 5];

数组元素的操作

数组元素的操作可以通过索引值从0开始,进行赋值输出操作

举个例子:

//定义一个包含3个元素的数组
let  array = ['a','b','c'];

//数组的输出
console.log(array[0]);

//数组的修改并赋值
array[0]=1;
console.log(array[0]);

效果展示:

数组元素的操作还可以通过for循环进行遍历输出或赋值

 举个例子:

// 定义变量并赋值
let n = 5;
// 定义一个空数组
let arr = new Array(5); 
// 使用 for 语句为数组元素赋值
for (let i=0; i<n; i++){ 
   arr[i] = i; 
   console.log(arr[i]); }

效果展示:

数组的删除操作

JavaScript中数组的删除操作,并不会影响数组的长度,只是单纯的将数组指定位置的元素改成undefined

举个例子:

let arr = new Array("a", "b", "c");
delete arr[1];
//删除数组arr[1]
for(let i=0;i<arr.length;i++){
    console.log(arr[i]);
}

效果展示:

 数组的常见属性和方法

 举个例子:

var arr1 = new Array("a", "b", "c", "d", "e", "f");
var arr2 = new Array("g", "h");
// 输出 arr1 的长度 6
document.write(arr1.length + "<br />"); 
// 输出连接后的新数组 a,b,c,d,e,f,g,h 
document.write(arr1.concat(arr2) + "<br />");
// 在 arr1 的末尾添加元素 i,输出其长度 7,此时 arr1=["a","b","c","d", "e","f","i"] 
document.write(arr1.push("i") + "<br />");
// 在 arr1 的开头添加元素 j,输出其长度 8,此时 arr1=["j","a","b","c", "d","e","f","i"] 
document.write(arr1.unshift("j") + "<br />");
// 删除 arr1 的最后一个元素,输出该元素 i,此时 arr1=["j","a","b","c", "d","e","f"]
document.write(arr1.pop() + "<br />");
// 删除 arr1 的第一个元素,输出该元素 j,此时 arr1=["a","b","c","d","e", "f"]
document.write(arr1.shift() + "<br />");
// 删除 arr1 中从下标 1 开始的 3 个元素,输出删除的元素 b,c,d,此时arr1=["a","e","f"] 
document.write(arr1.splice(1, 3) + "<br />");
// 反转 arr1 中元素的顺序,输出结果 f,e,a 
document.write(arr1.reverse() + "<br />");
// 对 arr1 中的元素进行排序,输出结果 a,e,f 
document.write(arr1.sort() + "<br />");
// 以新的数组对象,返回 arr1 中被选中的元素 f,此时 arr1=["a","e","f"] 
document.write(arr1.slice(-1) + "<br />");
//以#为分隔符,将 arr1 的所有元素连接成一个字符串,输出结果 a#e#f 
document.write(arr1.join("#"))