1、concat数组连接[产生新数组 不改变原数组;参数:数组和/或数值]

function append(arr, item) {
    return arr.concat(item)
}

2、数组的slice方法[截取元素 浅拷贝]+数组的push方法[向数组的末尾添加一个或多个元素]

function append(arr, item) {
    let res = arr.slice()
    res.push(item)
    return res
 }

3、扩展运算符[展开语法]

function append(arr, item) {
    return [...arr,item]
}

4、Object.assign[将所有可枚举的自有属性从一个或多个源对象复制到目标对象,返回修改后的对象。]

function append(arr, item) {
    const res = []
    Object.assign(res,arr)
    res.push(item)
    return res
}

5、forEach循环+数组的push方法

function append(arr, item) {
    const res = [];
    arr.forEach(i => res.push(i))
    res.push(item)
    return res
}

6、for循环+数组的push方法

function append(arr, item) {
    const res = [];
    for(const i of arr) {
        res.push(i)
    }
    res.push(item)
    return res   
}