javascript中的Array对象的方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript中的Array对象的方法相关的知识,希望对你有一定的参考价值。

  • 检测数组:只考虑一个全局作用域的情况下可以使用value instanceof Array 来判断一个对象是否是数组;如果要考虑多个全局的作用域,则使用Object.prototype.toString.call(value) == "[object Array]"

  • 转换方法:toString toLocaleString  join

  • 栈方法:(后进先出)在数组末尾插入一项,在数组末尾弹出一项。push:在数组末尾插入一项或多项,并返回现在的数组长度;pop:弹出数组最后一项,并返回。

  • 队列方法:(先进先出)在数组末尾插入一项,在数组开头弹出一项。push,shift:在数组开头弹出一项。也可以用unshift,在数组开头插入一项,以及pop方法,在数组末尾弹出一项。

  • 排序方法:reverse:将原数组的顺序弄反。sort:传入一个比较的函数,将该数组重新排序。比较函数会传入两个参数,第一个参数是前一项,第二个参数是后一项,如果第一个参数应该位于第二个参数之前,则返回负数,如果两个参数相等,则返回零,如果第一个参数应该位于第二个参数之后,则返回正数。

  • 操作方法:concat:基于当前数组和传入参数创建一个新的数组。参数中如果是数组,则会将其每一项都添加到当前数组中,如果不是数组,则会将其添加到当前数组的末尾。

var a = [1, 2, 3];
var b = a.concat(4, [5, 6]);
console.log(b);   // 1,2,3,4,5,6

       slice:基于当前数组的一项或多项创建一个数组。slice可以传入一个或两个参数,即返回项在原数组中的起始位置和结束位置。如果只传入一个参数,则表示返回该参数指定位置到当前数组末尾的所有项。如果传入两个参数,则表示返回第一个参数指定的起始位置到第二个参数制定的末尾位置(不包括结束位置项)的所有项。slice是不会影响原数组的哦。

var a = [1, 2, 3, 4, 5];
var b = a.slice(2);
var c = a.slice(2, 3);
console.log(b);     // 3,4,5
console.log(c);     // 2

      splice:数组方法中最复杂的一个方法,splice需要传入两个或两个以上的参数,第一个参数是删除或插入项的起始位置,第二个参数是删除几项,第三个参数以及后面的参数表示插入的项。splice 会修改原数组的,返回值是删除的项。

var a = [1, 2, 3, 4, 5, 6];
a.splice(0, 2);                 // [3,4,5,6]
a.splice(1, 0, 7, 8);           // [1,7,8,2,3,4,5,6]
a.splice(1, 2, 7, 8);           // [1,7,8,4,5,6]

ECMAScript5的方法待续……

以上是关于javascript中的Array对象的方法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript - Array对象,数组

javascript中valueOf()方法的用法?

js教程系列24:javascript-Array

内置对象(Date String Math Array)

JavaScript Array 对象参考手册

javascript检测基本类型值或引用类型值的类型方法