JS 数组常用的方法

社会主义新天地 提交于 2020-02-07 01:54:33

数组常用的方法:

x.toString()方法:任何对象都有toString方法。

             将任何对象转为字符串。

        一般不主动调用,系统在需要时自动调用

x.valueOf()方法:同toString()  基本完全一样。

var str = arr.join("分隔符"):将数组转为字符串。但是可以自定义分隔符!  默认符号为逗号

用法:将字符拼接为单词或句子。  固定用法:  chars.join('');

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var chars=['H','e','l','l','o'];
        var str=chars.join('');
        document.write(chars+"<br/>");
        document.write(str+"<br/>");
    </script>
</body>
</html>

var newArr = arr.concat(元素值,[数组],.......):将参数拆散成单个元素,追加到数组中。

*不会修改原数组,只能返回新数组对象*

实例:需要一个newArr接住连接后的数组  不会修改原数组
<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var arr1=[1,2,3];
        var arr2=[12,23,123];
        var newArr = arr1.concat(arr2);
        document.write(newArr);
    </script>
</body>
</html>

var subArr = arr.slice(start,end+1);

截取数组下标 从start开始,到end位置的元素,生成子数组对象。

*含头不含尾*

实例如下所示:  注意含头不含为尾。 要想截取最后的那个 需要最后那个+1,要不取不到最后那个。
截取的语法是:  var subArr=arr.slice(start,end+1);<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var arr1=[1,2,3];
        var arr2=[12,23,123];
        var newArr = arr1.concat(arr2,31);
        document.write(newArr+"<br/>");
        // newArr  1, 2, 3, 12, 23, 123, 31
        //          [0][1][2] [3] [4] [5]  [6]
        //截取下标为2 ——下标为4的。
        //截取的语法是:  var subArr=arr.slice(start,end+1);
        var subArr=newArr.slice(2,4+1);
        document.write(subArr);
    </script>
</body>
</html>

截取倒数第几个,实例如下:

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var arr1=[1,2,3];
        var arr2=[12,23,123];
        var newArr = arr1.concat(arr2,31);
        document.write(newArr+"<br/>");
        // newArr  1, 2, 3, 12, 23, 123, 31
        //          [0][1][2] [3] [4] [5]  [6]
        //截取下标为2 ——下标为4的。
        //截取的语法是:  var subArr=arr.slice(start,end+1);
        var subArr=newArr.slice(2,4+1);
        document.write(subArr+"<br/>");
        
        //倒数第2个,到倒数第4个
        subArr=newArr.slice(-4,-2+1);
                    //倒数第4个,倒数第2个
        document.write(subArr);
    </script>
</body>
</html>

arr.splice:删除,插入,替换!

删除数组元素:arr.splice(start,count);     在任意位置开始后,删除任意个。

替换输入元素:arr.splice(start,count,值1,值2);

插入元素:arr.splice(start,0,值1,值2);

返回每次删除元素组成的新数组。

arr.splice实例如下:<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var arr1=[1,2,3];
        var arr2=[12,23,123];
        var newArr = arr1.concat(arr2,31);
        document.write(newArr+"<br/>");

        newArr.splice(2,2);//仅删除
        newArr.splice(2,2,5,5,5); //先删除,再原位置插入 --相当于替换 
        newArr.splice(2,0,12,12,12); //插入 仅在2位置插入
        document.write(newArr+"<br/>");
    </script>
</body>
</html>

arr.reverse():   颠倒所有数组元素。更改元素值。不负责排序。

arr.sort(): 默认升序排列。  默认都转为字符串排序!

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!