js中关于数组的常见用法

1.数组常见的排序方法

(1)sort()–按照ascll字符编码排序,返回排序后的新数组,改变原数组,当数组中均为数字时,还需额外的处理,如下;
例如:

//第一种情况
var b=['c','d','a','b']
    b.sort();
    console.log(b);
    //运行结果:
    ["a", "b", "c", "d"]
----------------------------------------------------------
//第二种情况
<script type="text/javascript">
    //将数组a进行排序
    var a=[7,34,45,13,90,35,23];
    a.sort(function(num1,num2){
        return num1-num2;
    })
    console.log(a);//a=[7,13,23,24,34,35,45,90]
</script>

(2)reverse()——-颠倒数组中元素的顺序,改变原数组。
例如:

var a=[13,90,35,23];
    a.reverse();
    console.log(a);
    //运行结果:
    [23, 35, 90, 13]

2.数组的增、删涉及到的方法:

(1)向数组中增添元素
push(元素);向数组的尾部添加一个元素或多个元素。
例如:
var a=[7,34,45,13,90,35,23];
a.push("Hello","Time");
console.log(a);// [7, 34, 45, 13, 90, 35, 23, "Hello", "Time"]

unshift(元素);向数组的头部添加一个元素或多个元素。
例如:

var a=[7,34,45,13,90,35,23];
    a.unshift("Hello","Time");
    console.log(a)
    //["Hello", "Time", 7, 34, 45, 13, 90, 35, 23];

(2)从数组中删除元素:
pop();从数组的尾部删除一个元素。

var a=[13,90,35,23];
    a.pop();
    console.log(a);
    //[13, 90, 35]

shift();从数组的头部删除一个元素。
例如:

var a=[7,34,45,13,90,35,23];
    a.shift();
    console.log(a);
    //[34, 45, 13, 90, 35, 23]

(3)splice() 方法向数组中添加项目,或从数组中删除项目,并返回删除的项目。
语法:

arrayObject.splice(index,howmany,item1,…..,itemX)

删除项目:
例如:

var a=[13,90,35,23];
    var b=a.splice(0,2)
    console.log("被删除的项目:"+b);
    console.log("原数组现在的状况"+a);
    //运行结果:
    被删除的项目:13,90
   原数组现在的状况35,23

添加项目:
当第二个参数是0时,表示从索引位置开始添加元素:

var a=[13,90,35,23];
    a.splice(1,0,1,2)
    console.log(a);
    //运行结果为:
    [13, 1, 2, 90, 35, 23]

当第二个参数为n,且n不等于0时,表示从索引位置开始先删除n个元素,然后再添加元素:
例如:

var a=[13,90,35,23];
    a.splice(1,1,1,2)
    console.log(a);
    //运行结果:
    [13, 1, 2, 35, 23]

其他:

(1)提到这里我想提另外一个关于数组的方法:
slice()——-它的相关操作不会作用到原数组上面,它会返回一个子数组:
基本语法

ArrayObject.slice(start,end); start–end这是一个左闭右开的区间

例如:

var a=[13,90,35,23];
    var b=a.slice(0,2);
    console.log("原数组"+a);
    console.log("返回的东西"+b);
    //原数组13,90,35,23
     返回的东西13,90

(2) concat([被连接的数组]):连接两个数组,组成一个新数组,不改变原数组。
例如:

var a=[13,90,35,23];
    var b=["Hello","one","two"];
    var c=a.concat(b);
    console.log("a is:"+a);
    console.log("b is:"+b);
    console.log("c is:"+c);
    //运行结果为:
     a is:13,90,35,23
     b is:Hello,one,two
     c is:13,90,35,23,Hello,one,two

(3)join() 方法————用于把数组中的所有元素放入一个字符串。
元素是通过指定的分隔符进行分隔的,不改变原数组,返回一个新的字符串,具体用法如下:

arrayObject.join(separator)

参数描述:
separator 可选。是指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。

var a=[13,90,35,23];
    var b=a.join("-")
    console.log("原数组a:"+a);
    console.log("新生成的字符串b:"+b);
    //原数组a:13,90,35,23
   新生成的字符串b:13-90-35-23

备注:参考W3School

猜你喜欢

转载自blog.csdn.net/Kratial/article/details/82529172