13 # 手写 concat 方法

concat 的使用

concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。如果省略了所有参数,则 concat 会返回调用此方法的现存数组的一个浅拷贝。

<script>
    var arr1 = ["k", "a", "i"];
    var arr2 = ["m", "o"];
    var arr3 = [3, 1, 3];
    var result1 = arr1.concat(arr2, arr3);
    console.log("result1----->", result1);
    var result2 = arr1.concat(arr2, arr3, "hello", 666);
    console.log("result2----->", result2);
</script>

手写 concat

<script>
    Array.prototype.kaimoConcat = function (...args) {
        let newArr = [...this];
        if (args.length === 0) {
            return newArr;
        }
        args.forEach((el) => {
            if (Array.isArray(el)) {
                newArr.push(...el);
            } else {
                newArr.push(el);
            }
        });
        return newArr;
    };

    var result3 = arr1.kaimoConcat(arr2, arr3);
    console.log("result3---kaimoConcat-->", result3);
    var result4 = arr1.kaimoConcat(arr2, arr3, "hello", 666);
    console.log("result4---kaimoConcat-->", result4);
</script>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凯小默

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值