Array类型
描述
- 数组 - 是可以存储一个或多个数据的有序集合
检测数组
- 表示检测指定的目标是否为数组
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* 判断该数组是否为引用类型 */
console.log( arr instanceof Array );// 显示 true
Object.prototype.toSring.call()方法
- 用于判断当前对象的数据类型
- 该方法可以判断任何类型
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
console.log( Object.prototype.toString.call( arr ) );// 显示 [object Array]
/* 判断Number类型 */
console.log( Object.prototype.toString.call( 100 ) );// 显示 [object Number]
Array.prototype.isPrototypeOf()方法
- 该方法是继承于 Object
- 用于判断指定的类型是否出现在当前对象的原型链中
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
console.log( Array.prototype.isPrototypeOf( arr ) );// 显示 true
Array.isArray()方法
- 判断当前对象是否为数组
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
console.log( Array.isArray( arr ) );// 显示 true
转换数组
- toString()方法 - 表示将指定目标转换成字符串类型
-
valueof()方法 - 表示返回指定目标的原始值
- 原始值 - 使用字面量方式定义出的数据值
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* toString()方法 */
console.log( arr.toString() );// 显示 1,2,3,4,5
/* valueof()方法 */
console.log( arr.valueOf() );// 显示 [ 1, 2, 3, 4, 5 ]
进出栈方法
push()方法 和 pop()方法
- push()方法 - 表示在指定数组的最后面添加一个或多个元素
- pop()方法 - 表示对指定数组中的最后一个元素进行删除
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* 通过push()方法进行添加 */
arr.push( 6 );
console.log( arr );// 显示 [ 1, 2, 3, 4, 5, 6 ]
/* 通过pop()方法进行删除 */
arr.pop();
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
unshift()方法 和 shift()方法
- unshift()方法 - 表示在指定数组的最前面添加一个或多个元素
- shift()方法 - 表示对指定数组中第一个元素进行删除
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* 通过unshift()方法进行添加 */
arr.unshift( 7, 8 );
console.log( arr ); // 显示 [ 7, 8, 1, 2, 3, 4, 5 ]
/* 通过shift()方法进行删除 */
arr.shift();
console.log( arr );// 显示 [ 8, 1, 2, 3, 4, 5 ]
排序方法
- 表示对数组的排列方式进行设置
-
reverse()方法
- 表示将元素从大小进行排序
-
sort()方法
- 表示将元素先转换成 Unicode码 在根据 Unicode码 进行排序
/* 定义一个数组 */
var arr = [1,2,3,4,5];
/* 默认排序 */
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* reverse()方法的排序 */
console.log( arr.reverse() );// 显示 [ 5, 4, 3, 2, 1 ]
/* sort()方法的排序 */
console.log( arr.sort() );// 显示 [ 1, 2, 3, 4, 5 ]
连接方法
-
concat()方法
- 表示将两个或多个数组中的元素进行连接,显示在一个数组中
/* 定义一个数组 */
var arr1 = [1,2,3,4,5];
console.log( arr1 );// 显示 [ 1, 2, 3, 4, 5 ]
/* 定义另一个数组 */
var arr2 = [6,7,8,9];
console.log( arr2 );// 显示 [ 6, 7, 8, 9 ]
/* 通过concat()方法将两个数组进行拼接 */
console.log( arr1.concat( arr2 ) );// 显示 [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
操作方法
-
表示对数组进行的一系类操作
- 比如 删除、插入、替换、等等...
splice()方法
- 表示对数组进行添加或删除元素
删除元素
- 第一个参数 - 表示删除元素的开始位置(索引值)
- 第二个参数 - 表示删除元素的个数
- 该方法的返回值 - 将删除的元素组成新的数组进行返回
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [1,2,3,4,5]
/* 将方法的返回值赋值给一个变量 */
var s1 = arr.splice( 0, 5 );
/* 显示删除的元素数据 */
console.log( s1 );// 显示 [ 1, 2, 3, 4, 5 ]
/* 显示删除后数组 */
console.log( arr );// 显示 []
添加元素
- 第一个参数 - 表示添加元素的位置
- 第二个参数 - 表示删除元素的个数
- 第三个参数 - 表示添加的元素(添加的元素可以是多个)
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [1,2,3,4,5]
/* 将方法的返回值赋值给一个变量 */
var s2 = arr.splice( 0, 0, 6,7,8 );
/* 显示删除的元素数据 */
console.log( s2 );// 显示 []
/* 显示添加元素的位置 */
console.log( arr );// 显示 [ 6, 7, 8, 1, 2, 3, 4, 5 ]
slice()方法
- 表示对指定数组中的元素进行截取
-
参数
- 第一个参数 - 表示开始截取的位置(默认从 0(索引值)开始)
- 第二个参数 - 表示结束截取的位置(默认到数组最后的位置)
/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [1,2,3,4,5]
/* 将方法的返回值赋值给一个变量 */
var s3 = arr.slice( 3, 4 );
/* 显示截取的元素 */
console.log( s3 );// 显示 [ 4 ]
检测方法
- 表示检测目标数组中是否存在指定元素
indexOf()方法
- 表示从左到右的顺序进行检测
/* 定义一个数组 */
var arr = [1,2,3,4,2,5,6];
console.log( arr );// 显示 [ 1, 2, 3, 4, 2, 5, 6 ]
/* 通过indexOf()方法进行检测 */
console.log( arr.indexOf( 2 ) );// 显示 1(索引值)
lastIndexOf()方法
- 表示从右到左的顺序进行检测
/* 定义一个数组 */
var arr = [1,2,3,4,2,5,6];
console.log( arr );// 显示 [ 1, 2, 3, 4, 2, 5, 6 ]
/* 通过lastIndexOf()方法进行检测 */
console.log( arr.lastIndexOf( 2 ) );// 显示 4(索引值)
检测的目标不存在时
-
以上两种方法只能匹配到第一个与目标元素相同的元素,并显示位置信息
- 如果指定数组中存在多个相同元素数据,只会找到第一个,剩下的将不会再去查找
- 如果需要检测的元素不存在会显示 -1(固定写法)
/* 定义一个数组 */
var arr = [1,2,3,4,2,5,6];
console.log( arr );// 显示 [ 1, 2, 3, 4, 2, 5, 6 ]
/* 检测的目标不存在时 */
console.log( arr.indexOf( 8 ) );// 显示 -1
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。