javascript - Array.prototype.push.apply 意外行为

标签 javascript

我正在尝试使用 Array.prototype.push.apply 合并两个列表。

c = Array.prototype.push.apply(a, b);

但是,当第二个数组为 [] 时,这不会合并数组。

例如,如果

a = ['x', 'y', 'z']
b = []

c 将是 3

为什么会发生这种情况? [] 不应该像任何数组一样对待吗?

最佳答案

只需使用Array.prototype.concat:

c = a.concat(b);

关于javascript - Array.prototype.push.apply 意外行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34309099/

相关文章:

javascript - 为什么这两种代码在react-native中会出现不同的行为?

javascript - 从 Google Earth Engine 上的 NEX-GDPDP 产品导出每日气候数据

javascript - 在 React JS 中调用 API 的正确方法是什么?

javascript - 当我单击“'"更多”按钮时如何将 div 高度属性更改为自动

javascript - Angularjs textarea 不处理换行符

javascript - 返回一个字符串,将字符串中的每个元素[0]替换为元素[1]

javascript - IE8无法计算Math.ceil()

javascript - 在宽度较小的不同设备上正确使用移动视口(viewport)

javascript - jQuery/JS 函数值返回

javascript - 通过 Ajax 发送时 undefined variable