Array对象 unshift / push 方法向数组首/尾添加元素

push() 方法

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。新元素将添加在数组的末尾, 此方法改变原数组的长度。

语法:array.push(item1, item2, ..., itemX)

参数 描述
item1, item2, ..., itemX 必需。要添加到数组的元素。

编码示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <title>数组测试</title>
    <script>

        /**
         * 为数组 arr1 在末尾逐个添加元素
         * @type {string[]}
         */
        let arr1 = ["A", "B", "C"];
        for (let i = 0; i < 5; i++) {
            let arr1Length = arr1.push(i);
            console.log("arr1=" + arr1.toString(), "数组长度:" + arr1Length);
        }

        console.log("---------------1--------------------");

        /**
         * 为数组 arr2 中的元素前后调换顺序
         * @type {number[]}
         */
        let arr2 = [1, 2, 3, 4, 5];
        console.log("原数组 arr2=" + arr2.toString());

        let arr2_2 = [];
        while (arr2.length > 0) {
            /**删除原数组末尾的元素,然后添加到新数组末尾*/
            let delPop = arr2.pop();
            arr2_2.push(delPop);
        }
        console.log("调换顺序后 arr2_2=" + arr2_2.toString());


        console.log("---------------2--------------------");
        
        let arr3 = ["A", "B", "C"];
        /**可以为数组同时添加多个元素*/
        let size = arr3.push(1, 2, 3);
        console.log(arr3.toLocaleString(), "数组大小:" + size);

        /**数组中的元素可以是任意类型,如对象,数组,JSON 等*/
        size = arr3.push({"name": "华安", "age": 35});
        console.log(arr3.toLocaleString(), "数组大小:" + size, "最后一个元素:" + JSON.stringify(arr3[size - 1]));

    </script>
</head>
<body>

</body>
</html>

unshift() 方法

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。该方法将改变原数组的数目。

所有主要浏览器都支持 unshift()方法,Internet Explorer 8 及更早IE版本不支持,返回 undefined

语法:array.unshift(item1,item2, ..., itemX)

参数 描述
item1,item2, ..., itemX 可选。向数组起始位置添加一个或者多个元素。

编码示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <title>数组测试</title>
    <script>

        /**
         * 为数组 arr1 在首部逐个添加元素
         * @type {string[]}
         */
        let arr1 = ["A", "B", "C"];
        for (let i = 0; i < 5; i++) {
            let arr1Length = arr1.unshift(i);
            console.log("arr1=" + arr1.toString(), "数组长度:" + arr1Length);
        }

        console.log("---------------1--------------------");

        /**
         * 为数组 arr2 中的元素前后调换顺序
         * @type {number[]}
         */
        let arr2 = [1, 2, 3, 4, 5];
        console.log("原数组 arr2=" + arr2.toString());

        let arr2_2 = [];
        while (arr2.length > 0) {
            /**删除原数组第一个元素,然后添加到新数组首部*/
            let delPop = arr2.shift();
            arr2_2.unshift(delPop);
        }
        console.log("调换顺序后 arr2_2=" + arr2_2.toString());


        console.log("---------------2--------------------");
        let arr3 = ["A", "B", "C"];
        /**可以为数组同时添加多个元素*/
        let size = arr3.unshift(1, 2, 3);
        console.log(arr3.toLocaleString(), "数组大小:" + size);

        /**数组中的元素可以是任意类型,如对象,数组,JSON 等*/
        size = arr3.unshift({"name": "华安", "age": 35});
        console.log(arr3.toLocaleString(), "数组大小:" + size, "第一个元素:" + JSON.stringify(arr3[0]));
    </script>
</head>
<body>

</body>
</html>

猜你喜欢

转载自blog.csdn.net/wangmx1993328/article/details/84196581
今日推荐