数组

    length

获取当前数组中数据的个数

    定义数组

字面量方式

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

构造函数方式

var arr1 = new Array(1,2,3,4,5);

    索引数组

JavaScript默认定义的数组都是索引数组

var obj = new Object();

var arr = [];

var arr1 =[100,’string’,true,undefined,null,obj ,arr];

//数组的调用

console.log(arr1[1]);//string

 

关联数组

var arr2 = new Array();

arr2[‘name’]= ‘zhangwuji’;

arr2[‘age’] = 18;

console.log (arr2[‘name’]);//zhangwuji

 

稀疏数组

遍历循环数组时,length属性失效

示例

var arr3 = new Array(10);//如果参数个数为一个时–表示数组的长度

arr3[5]= ‘string’;

console.log(arr3);//[ , , , , , ‘string’, , , ,  ]

    操作数组

新增

var arr=[1,2,3,4,5,6,7,8,9];

arr[arr.length]=’string’;

console.log(arr);

修改

var arr=[1,2,3,4,5,6,7,8,9];

arr[4]=true;

console.log(arr);

删除

var arr=[1,2,3,4,5,6,7,8,9];

delete arr[7];

console.log(arr);

只删除对应位置的数据,位置保留

    循环数组

循环语句–for为主

 

var arr = [1,2,3,4,5,6,7,8,9,0];

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

console.log(arr[i]);

}

 

for (var i in arr){

console.log(arr[i]);

}

 

for (var i of arr){

console.log (i);

}*/

    二维数组

定义二维数组

var arr=[[1,2,3,],[11,22,33,],[21,31,41]];

遍历二维数组

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

console.log(arr[i]);

for (var j=0; j<arr[i].length; j++){

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

}

}

    检测数组

Array.prototype.isPrototypeOf( [] ):

返回 true/false

示例

var arr=[1,2,3,4,5,6,7,8,9,0];

console.log (Array.prototype.isPrototypeOf(arr));//true

Array.isArray():返回 true/false

示例

var arr=[1,2,3,4,5,6,7,8,9,0];

console.log(Array.isArray(arr));//true

Object.prototype.toString.call()方法

Object是构造函数–new Object()

具有prototype原型属性

在原型上定义一个toString()

方法/函数都是Function类型

Function提供的方法–call()

    进出栈

push()和pop()方法

向数组末尾添加元素

对象名.push(’元素’);

示例

var colors =[“red”, “blue”, “green”];

colors.push(‘yellow’);

console.log(colors);//[ ‘red’, ‘blue’, ‘green’, ‘yellow’ ]

从数组的末尾删除元素

对象名.pop();

示例

var colors =[“red”, “blue”, “green”];

colors.pop();//从数组的末尾删除元素

console.log(colors);//[ ‘red’, ‘blue’ ]

shift()和unshift()方法

向数组的第一个位置添加元素

对象名.unshift(‘元素’);

示例

var colors =[“red”, “blue”, “green”];

 

colors.unshift(‘yellow’);

console.log(colors);//[ ‘yellow’, ‘red’, ‘blue’, ‘green’ ]

从数组的第一个位置删除元素

对象名.shift();

示例

var colors =[“red”, “blue”, “green”];

colors.shift();//

console.log(colors);//[‘blue’, ‘green’ ]*/

排序方法

var values = [ 0, 1, 5, 10, 20 ];

reverse()

反转数组的元素顺序

console.log( values.reverse() );// 20,10,5,1,0

sort()

对数组的元素进行排序

console.log( values.sort() );// 0,1,10,20,5

按照首字母的顺序排序

    操作方法

截取数组

slice(start,end方法

start

表示截取的开始位置

end

(可选项)表示截取的结束位置,不包括end数据当前位置

如果默认省略,表示截取到当前数组的最后

如果start和end为负值的话,表示从右向左计算

示例

var arr = [1,3,5,7,15,20];

var result = arr.slice(0,2);//[ 1, 3 ]

var result= arr.slice(3);//[ 7, 15, 20 ]

var result = arr.slice(-3,5);//[ 7, 15 ]

var result = arr.slice(-3,-1);//[ 7, 15 ]

console.log(result);

 

splice(index,howmany)

删除操作

index

表示添加或删除的位置

howmany

表示删除的个数

返回值

表示被删除的内容

示例

var arr = [1,3,5,7,15,20];

 

var result = arr.splice(1,1);

console.log(result);//3

console.log(arr);//[ 1, 5, 7, 15, 20 ]

添加操作

示例

var arr = [1,3,5,7,15,20];

 

var result=arr.splice(1,0,25,26);

console.log(result);

console.log(arr);//[ 1, 25, 26, 3, 5, 7, 15, 20 ]

替换操作

示例

var arr = [1,3,5,7,15,20];

var result = arr.splice(1,1,4);

console.log(result);

console.log(arr);//[ 1, 4, 5, 7, 15, 20 ]

    位置方法

indexOf()方法

从左到右搜索,找到直接返回

lasIndexOf()方法

从右到左搜索,找到直接返回

如果搜索的内容不存在

直接返回-1

打赏

发表评论

邮箱地址不会被公开。 必填项已用*标注