Array 对象方法

  • 转换方法:toLocaleString()、toString()、valueOf()

其中toString()和valueOf()无论重写了谁,都会返回相同的值。数组会将每个值进行字符串形式的拼接,以逗号隔开。

var box = [‘小明‘, 28, ‘江苏‘, new Date()];
alert(typeof box);                            //object
alert(typeof box.toString());                //string
alert(typeof box.valueOf());                //object
alert(typeof box.toLocaleString());        //string 本地格式区域字符串
  • join()方法

默认情况下,数组字符串都会以逗号隔开。如果使用join()方法,则可以使用不同的分隔符来构建这个字符串。

var box = [‘小明‘, 28, ‘江苏‘];
alert(box.join(‘|‘));    //方法运行过后返回按|分割的字符串 弹出:小明|28|江苏
alert(box);             //原数组没有任何变化,类型还是object 弹出:小明,28,江苏
  • push()和pop()方法 (栈方法)

栈是一种数据结构(后进先出),也就是说最新添加的元素最早被移除。而栈中元素的插入(或叫推入)和移除(或叫弹出),只发生在一个位置——栈的顶部。ECMAScript为数组专门提供了push()和pop()方法。

push()方法可以接收任意数量的参数,把它们逐个添加到数组的末尾,并返回修改后数组的长度。而pop()方法则从数组末尾移除最后一个元素,减少数组的length值,然后返回移除的元素。

var box = [‘小明‘, 28, ‘盐城‘];
alert(box.push(‘计算机编程‘,‘江苏‘)); //给数组末尾添加了2个元素,并返回数组最新长度
alert(box);          //返回最新数组元素
alert(box.pop());   //移除数组最后的元素,并且返回移除的元素
alert(box);         //返回最新数组元素
  • push()和shift()方法 (队列方法)

栈方法是后进先出,而列队方法就是先进先出。列队在数组的末端添加元素,从数组的前端移除元素。通过push()向数组末端添加一个元素,然后通过shift()方法从数组前端移除一个元素。

var box = [‘小明‘, 28, ‘盐城‘];
alert(box.push(‘计算机编程‘));
alert(box);
alert(box.shift());            //移除数组开头的一个元素,并且返回这个元素
alert(box);
  • unshift()方法

ECMAScript还为数组提供了一个unshift()方法,它和shift()方法的功能完全相反。unshift()方法为数组的前端添加一个元素。

var box = [‘小明‘, 28, ‘男‘];
alert(box.unshift(‘江苏‘)); //给数组前端添加一个元素,并且返回最新的长度
alert(box);    //弹出:江苏,小明,28,男
  • 排序方法 reverse()和sort()

reverse()逆向排序,sort()从大到小排序。

var box = [1,2,3,4,5];
alert( box.reverse());     //方法执行后返回一个逆序后的数组
alert( box);              //原数组也被逆序了。

var box = [4,1,6,2,7,3,9];
alert(box.sort());       //从小到大排序
alert(box);                    

sort方法的默认排序在数字排序上有些问题,因为数字排序和数字字符串排序的算法是一样的。我们必须修改这一特征,修改的方式,就是给sort(参数)方法传递一个函数参数。这点可以参考手册说明。

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"

document.write(arr + "<br />") //输出:10,5,40,25,1000,1
document.write(arr.sort())    //输出:1,10,1000,25,40,5

</script>

上面的代码是按照字母顺序进行排序,没有按照数值的大小对数字进行排序,要实现按数值顺序这一点,必须用一个排序函数:

function sortNumber(a,b){
        return a-b;
}
var box = ["0","12","5","10","15"];
alert(box.sort(sortNumber));  //弹出:0,5,10,12,15
alert(box.reverse());
  • contact()方法可以基于当前对象创建一个新数组。
var box = [‘小明‘, 28, ‘男‘];
var box2 = box.concat(‘计算机编程‘);
alert(box2); //弹出:小明,28,男,计算机编程
alert(box)   //弹出:小明,28,男
  • slice()方法可以基于数组获取指定区域元素并创建一个新数组。
var box = [‘小明‘, 28, ‘男‘,‘计算机编程‘];
var box2 = box.slice(1);//从下标位置1开始选取至数组末尾
alert(box2);        //弹出:28,男,计算机编程

var box = [‘小明‘, 28, ‘男‘,‘计算机编程‘,‘江苏‘];
var box2 = box.slice(1,3);   //而是从第1个下标位置的元素取到第3个下标位置前的一个元素
alert(box2);        //弹出:28,男
  • splice()主要用途是向数组中插入元素。
//splice中的删除功能:
var box = [‘小明‘, 28, ‘男‘,‘江苏‘,‘计算机编程‘];
var box2 = box.splice(0,2); //这里表示删除从index0开始的2个元素,
alert(box2);           //弹出:小明,28
alert(box);           //弹出:男,江苏,计算机编程

//splice中的插入功能:
var box = [‘小明‘, 28, ‘男‘];
var box2 = box.splice(0,0,‘江苏‘,‘计算机编程‘);//从index0前插入元素,0表示不删除
alert(box2);          //弹出空白
alert(box);          //弹出:江苏,计算机编程,小明,28,男

//splice中的替换功能:
var box = [‘小明‘, 28, ‘男‘];
var box2 = box.splice(0,1,‘小新‘); //将删除位于 index 0 的元素,并添加一个新元素来替代被删除的元素:
alert(box2)    //弹出:小明
alert(box);  //弹出:小新,28,男
时间: 2024-10-15 00:23:18

Array 对象方法的相关文章

阮一峰老师的JavaScript标准参考教程:数组、Array对象和Array对象方法

数组 1. 定义 数组(array)是按次序排列的一组值.每个值的位置都有编号(从0开始),整个数组用方括号表示. var arr = ['a', 'b', 'c']; 上面代码中的a.b.c就构成一个数组,两端的方括号是数组的标志.a是0号位置,b是1号位置,c是2号位置. 除了在定义时赋值,数组也可以先定义后赋值. var arr = []; arr[0] = 'a'; arr[1] = 'b'; arr[2] = 'c'; 任何类型的数据,都可以放入数组. var arr = [ {a:

js中Array对象方法详解

操作方法:concat() slice() splice() concat()方法可以基于当前数组中的所有项创建一个新数组.具体来说,这个方法会创建当前数组一个副本,将接收到参数添加到副本的末尾,最后返回新构建的数组.如果没有参数,复制当前数组并返回副本.如果参数是一个或多个数组,会将数组中的每一项添加到结果数组中.如果参数不是数组,将参数值添加到数组末尾. var colors = ['red','green','blue']; var colors2 = colors.concat('yel

JavaScript中的Array对象方法调用

方法concat for  循环与for in 循环 <html> <head> <script type="text/javascript"> alert(2); var arr=[4,5,6,8,7,4]; alert(arr); alert("length:"+arr.length); var arr2=[6,8,9,5,4]; alert(arr2); alert(arr2[0]); alert(arr.concat(ar

Array对象方法

1. concat() :连接两个或更多的数组,并返回结果. 2. join() :把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. 3. pop() :删除并返回数组的最后一个元素 4. shift() :删除并返回数组的第一个元素 5. push() :向数组的末尾添加一个或更多元素,并返回新的长度. 6. reverse() :颠倒数组中元素的顺序. 7. slice() :从某个已有的数组返回选定的元素 slice(2,-2); 8. sort() :对数组的元素进行排序(

javascript中的array对象属性及方法

Array 对象 Array 对象用于在单个的变量中存储多个值. 创建 Array 对象的语法: new Array(); new Array(size); new Array(element0, element1, ..., elementn); 参数 参数 size 是期望的数组元素个数.返回的数组,length 字段将被设为 size 的值. 参数 element ..., elementn 是参数列表.当使用这些参数来调用构造函数 Array() 时,新创建的数组的元素就会被初始化为这些

Array数组对象方法

Array 对象方法 方法 描述 concat() 连接两个或更多的数组,并返回结果. copyWithin() 从数组的指定位置拷贝元素到数组的另一个指定位置中. entries() 返回数组的可迭代对象. every() 检测数值元素的每个元素是否都符合条件. fill() 使用一个固定值来填充数组. filter() 检测数值元素,并返回符合条件所有元素的数组. find() 返回符合传入测试(函数)条件的数组元素. findIndex() 返回符合传入测试(函数)条件的数组元素索引. f

javascript数组(Array)方法汇总

Array 对象属性 属性 描述 constructor 返回对创建此对象的数组函数的引用. length 设置或返回数组中元素的数目. prototype 使您有能力向对象添加属性和方法. Array 对象方法 方法 描述 concat() 连接两个或更多的数组,并返回结果. join() 把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. pop() 删除并返回数组的最后一个元素 push() 向数组的末尾添加一个或更多元素,并返回新的长度. reverse() 颠倒数组中元素的

JavaScript中的Array对象

1.创建Array对象 创建Array对象的语法 var 数组名 = new Array(); 定义数组之后.就须要向数组中加入元素.格式例如以下 数组名[<下标>]=值: 2.Array对象属性 Array对象仅提供了4个属性 index:字符在字符串的匹配位置,或者找不到返回-1 input:指定匹配正則表達式的原始字符串 length:返回数组的长度,即数组里有多少个元素,利用该属性能够方便地实现对数组的遍历 prototype:将新定义的属性或者方法加入到Array对象中,然后,该对象

JavaScript Number 对象 Javascript Array对象

JavaScript Number 对象 Number 对象属性 属性 描述 constructor 返回对创建此对象的 Number 函数的引用. MAX_VALUE 可表示的最大的数. MIN_VALUE 可表示的最小的数. NaN 非数字值. NEGATIVE_INFINITY 负无穷大,溢出时返回该值. POSITIVE_INFINITY 正无穷大,溢出时返回该值. prototype 使您有能力向对象添加属性和方法. Number 对象方法 方法 描述 toString 把数字转换为字