&&前端&& 数组合方式

&&前端&& 数组合并

第一种

arr1 = [1,2,3];
arr2 = [4,5,6];
arr1.push(...arr2);

「必须有三个点点啊。必须有,为什么,目前不知道,后续更新」
「来啦,来啦,来啦」
关于三个点点 的解释
ES6推出的用于函数参数的rest操作符

function howMany(...args){
return "You have passed " + args.length + " argumengts";
}
console.log(howmany(1,2,3));
console.log(howMany("string", null, [1, 2, 3], { }));

控制台将显示字符串 You have passed 3 arguments. 和 You have passed 4 arguments.。

使用 rest 参数,就不需要查看 args 数组,并且允许我们在参数数组上使用 map()、filter() 和 reduce()。
map 地图
filter过滤
reduce 减少 降低

至于啊!!! map()、filter() 、reduce()。是干啥的 下次更新;

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

var numbers = [15.5, 2.3, 1.1, 4.7];
 
function getSum(total, num) {
    return total + Math.round(num);
}
function myFunction(item) {
    return numbers.reduce(getSum, 0);
}

我试过直接用numbers调用reduce。显示numbers不是一个函数。

reduce必须有一个函数作为参数
可以用

const sum = (x, y, z) => {
  const args = [x, y, z];
  return args.reduce((a, b) => a + b, 0);
}
const sum = (...args) => {
  return args.reduce((a, b) => a + b, 0);
}

第二种

arr1 = [1,2,3]
arr2 = [4,5,6];
Array.prototype.apply(arr1,arr2);

第三种

const myConcat = (arr1, arr2) =>{
  return arr1.concat(arr2);
};

console.log(myConcat([1, 2], [3, 4, 5]));

「这里备注一个知识点。const定义的变量是对象时,还是可以被改变的。」

「原理目前不是很懂,我保证后续更新;」

有知道的也可以留言讨论;;;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值