数组——数组创建及操作

Posted y-dt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组——数组创建及操作相关的知识,希望对你有一定的参考价值。

创建数组

1. 字面量

var BAT = [‘Alibaba‘,‘Tencent‘,‘Baidu‘];
var students = [{name:‘ydt‘,age:23},{name:‘yjx‘,age:40}];
var arr = [‘a‘,123,true,null,undefined];
var arrInArr = [[1,2],[3,4,5]]; 

2. new Array

var arr = new Array();
var arrWithLength = new Array(100);//undefined*100
var arrLikesLiteral = new Array(true,false,null,1,2,‘hi‘);//等价于[true,false,null,1,2,‘hi‘];

数组长度限制范围:0~2的23次方-1。

数组读写

var arr = [1,2,3,4,5];
arr[1];//2
arr.length;//5

arr[5] = 6;//可以动态添加数组长度
arr.length:;//6

数组元素增删

动态的,无需指定大小

//数组尾部增加元素
arr.push();
arr[arr.length] = 4;//equal to arr.push(4);
//数组头部增加元素
arr.unshift(0);

var = [1,2];
delete arr[0];//删除索引,值变为undefined
arr[0];//undefined , 长度不变。
arr.length;//2
0 in arr;//false,0索引已被删除,如果不执行delete,主动为arr[0]设置值为undefined,0 in arr将得到true。

//数组尾部元素删除
arr.pop();
arr.length--;//equal to arr.pop();

//数组头部元素删除
arr.shift();

数组迭代

1. 普通for循环

var i = 0,n=10;
var arr = [1,2,3,4,5];
for(;i<n;i++){
    console.log(arr[i]);
}

2. for in (不建议)

会迭代原型链上的属性

var i = 0,n=10;
var arr = [1,2,3,4,5];
for(i in arr){
    console.log(arr[i]);
}

3. for of

var i = 0,n=10;
var arr = [1,2,3,4,5];
for(i of arr){
    console.log(i);
}

4.Array.prototype.forEach

var arr = [1,2,3,4,5];
arr.forEach(function(value,index,arr){
    console.log(value);
})

只为数组指定大小,未设置值,则不存在索引属性(尽管里面的数组元素均为undefined),但若认为设置数组元素为undefined,如arr[0] = undefined,则存在索引属性。

以上是关于数组——数组创建及操作的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB—数组运算及数组化编程

JavaScript-数组及数组元素操作

MATLAB编程与应用系列-第2章 数组及矩阵的创建及操作

php数组的创建及操作

数组的创建,及数组的方法

VSCode自定义代码片段—— 数组的响应式方法