1.定义:
数组,是存储1个或多个数据的容器,是一组内存空间,通常用来批量处理数据,这组内存空间的名字叫做数据名
存储数据管理:
数组对其自身储存的数组没有限制,数量还是类型均可
通过数组的下标来管理数组元素,不能直接通过数组名来操作数组元素,需要结合下标
数组名0length:表示数组的长度,也就是数组当前存储的元素的个数(从0开始)
2.数组的创建:
var 数组名 = new Array( );
var 数组名 = new String( );
var 数组名 = [ ]( 推荐使用 )
3.数组的访问:
访问单个:
数组的访问通过数组名结合下标来访问单个元素
数组名[ i ]访问数组中第 i 个元素,
访问全部: (通过与for循环结合使用)
for(var i = 0;i < arr.length;i + 1){
arr[i]
}
4.数组的方法:
- push 将元素添加到数组中的最后一位
arr.push ( a ); - unshift 将元素添加到数组的第一位
arr.unshift ( a ); - pop 删除数组的最后一个元素
arr.pop ( ); - shift 删除数组的第一个元素
arr.shift ( ); - join 将数组中全部内容转化为字符串形式拼接后返回
arr.join ( );(用空格将数组中每个元素按字符串形式拼接) - sort 将数组按从小到大排列
arr.sort ( ); - reverse 将数组从大到小排列
arr.reverse ( ); - instance of 判断是不是数组(返回true/false)
arr.instanceof Array; / Array.isArrat( arr ) - concat 数组拼接
arr.concat(arr2)(将数组arr2拼接到数组arr内) - 返回数组中的指定范围:
| 方法 | 作用 |
|---|---|
| slice | 截取数组中指定范围并返回(需要定义新数组接收),包头不包尾 |
| splice | 删除:只规定开始位置和修改长度;替换:规定了开始位置结束位置和修改内容;插入:规定了开始结束位置和修改长度,且修改长度大于删除长度 |
arr.slice(开始位置,结束位置)
arr.splice(开始位置,结束位置,修改内容)
5.数组的特殊类型
- 稀疏数组:
数组中某些元素为空(在自定义数组时不允许出现)
arr = [ 1, 2,"a", 4, , 6]; - 多维数组:
实际上是数组的多重嵌套
arr = [[1,2,3],[a,b,c]]
6.数组的排序及去重
- 数组的排序:
思路:使用第三个变量来交换两个元素的值
function sort(arr){
for (var i=0;i<arr.length;i++) {
for (var j=i+1;j<arr.length;j++) {
if (arr[i]<arr[j]) {
var sj=arr[i];
arr[i]=arr[j];
arr[j]=sj;
}
}
}
return arr;
}
- 数组的去重:
方法1:双重循环,将每个元素的值挨个与其他元素的值想比较,如果相同则移除
function double(arr){
for(var i = 0;i<arr.length;i++){
for (var j = i+1;j<arr.length;j++) {
if (arr[i]==arr[j]) {
arr.splice(j,1);
--j; 删除成功后需要重新再将该元素与其之后的元素再次比较,所以需要-1
}
}
}
return arr;
}
本文均属个人理解
本文深入讲解数组的概念、创建、访问、方法及特殊类型,包括稀疏数组和多维数组,并介绍排序与去重技巧,是JavaScript编程的重要参考资料。
2953

被折叠的 条评论
为什么被折叠?



