js中数据基础操作方法说明

2018-04-02  本文已影响0人  Coding破耳

数组方法push、pop、shift、unshift、join、splice、sort、reverse、concat的作用

1. push和pop

push和pop在数组的尾部进行操作

var arr = ["a","b","c"];
var x = arr.push("d");

x的值为4,为执行push操作后数组的大小;

x = arr.pop();

x的值为"d",执行pop操作后,返回被弹出的数据;

2. shift和unshift

shift和unshift在数组的头部进行操作

var arr = ["a","b","c"];
var x = arr.shift();

x的值为"a",执行shift操作后,数组弹出原第一个值,同时原数组的size减小1;如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined

x = arr.unshift("h");

x的值为3,实行unshift操作后,将"h"插入到数组头部,数组大小变为3;arr的值变为["h","b","c"]

3. join

join() 方法用于把数组中的所有元素放入一个字符串,在括号中输入分割各元素的分割符,格式为string;如果不填,缺省为","。

var arr = ["a","b","c"];
var x = arr.join("=-=");

x的值为"a=-=b=-=c"

4. splice

splice是对数组进行替换的操作,最少必须填2个参数;第一个参数是操作的起始位置,为number类型;第二个参数是需要删除的项数,为number类型,小于0时当0处理,等于0时表示不删除元素;第3至n参数,为要在操作位置插入的元素,可以不填写。

var arr = ["a","b","c"];
var x = arr.splice(1,0,"heh");

x的值为splice操作删除的元素的数据,因为在此处是空数组;在位置1处插入字符串,arr的值为["a", "heh", "b", "c"]

var arr = ["a","b","c"];
var x = arr.splice(1,1,"heh");

x的值为splice操作删除的元素的数据,因为在此处是["b"];在位置1处插入字符串,arr的值为["a", "heh","c"]

5. sort()

sort操作是对数据进行排序的操作;

var arr = [14,3,6,5,7,2,1,10];
var x = arr.sort();

它有默认的比较方法,将元素转化为string后进行比较。
x的值为排序后的数组,x和arr指向同一块内存;结果为 [1, 10, 14, 2, 3, 5, 6, 7]

var arr= [ 
    { 'sortNo': 2},
    { 'sortNo': 1},
    { 'sortNo': 5},
    { 'sortNo': 6},
    { 'sortNo': 7},
    { 'sortNo': 3},
    { 'sortNo': 9},
    { 'sortNo': 4},
    { 'sortNo': 0}
];
arr.sort(function(a, b){
        return a.sortNo - b.sortNo;
});

sort方法还可以自己编写比较规则,作为参数传递到sort方法;

6. reverse

reverse方法用于颠倒数组中元素的顺序,该方法会改变原来的数组,而不会创建新的数组。

var arr = ["a","b","c"];
var x = arr.reverse();

x的值为倒序后的数组,x和arr指向同一块内存;结果为 ["c", "b", "a"];

7. concat

concat方法用于连接两个或多个数组,该方法不会改变现有的数组,会返回一个新的数据。

var arr = ["a","b","c"];
var x = arr.concat("hehe");
var x1 = arr.concat("22","33");

参数可以直接是数组内的元素。x,x1是返回的新数组,结果为 ["a", "b", "c", "hehe"],x1的值为["a", "b", "c", "22","33"],arr的值为 ["a","b","c"];

var y = arr.concat(["h1","h2"]);

参数可以直接是数组。y是返回的新数组,结果为["a", "b", "c", "h1", "h2"],arr的值为 ["a","b","c"];

var z = arr.concat("t1",["r","s"]);

参数可以是数组和元素的混合。z是返回的新数组,结果为["a", "b", "c", "t1", "r", "s"],arr的值为 ["a","b","c"];

上一篇 下一篇

猜你喜欢

热点阅读