javascript - 为什么我不能在 Javascript 深度克隆数组上执行 forEach?

标签 javascript arrays clone

这会给我一个数字 1、2 和 3 的警报。

[1,2,3].forEach(alert);

这给了我一个错误:

$.extend(true, {}, [1,2,3]).forEach(alert);

错误:

TypeError: Object #<Object> has no method 'forEach'

为什么会发生这种情况,我如何循环遍历克隆的对象?

最佳答案

您的 .extend() 调用正在创建一个普通对象,而不是一个数组。 (也就是说,您实际上并没有创建“深度克隆数组”。)在普通对象上没有像 .forEach 这样的迭代器。

关于javascript - 为什么我不能在 Javascript 深度克隆数组上执行 forEach?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13077116/

相关文章:

javascript - 如何将jquery变量值传递到html输入框?

javascript - Discord Rich Presence 未连接

javascript - 单击一个按钮以在 Javascript 上播放声音

java - 用 2D 数组表示 8x8 维度的问题

arrays - 如何在 swift 中从 xml 文件获取数组

php - 克隆 Doctrine 实体与相关的一对多实体

javascript - 如何继承javascript匿名函数并分配给变量?

c - 如何在 C 中(在 Visual Studio 中)在全局固定大小数组中设置值?

javascript - 如何防止 javascript/backbone.js 克隆模型共享属性

jQuery - 无法更改 IE 中克隆表单的 id