【发布时间】:2017-12-27 08:04:22
【问题描述】:
我正在使用 FabricJS,当您向 FabricJS 画布添加一些东西时,它会使用内部变量 canvas["_objects"]
跟踪它们但是,当我 console.log() 时,我得到了你在 firebug screenshot
中看到的内容查看这个数组,您会假设其中只有 7 个元素,当您使用 firebug 扩展它时,有 9 个,长度为 9。但是当我这样做时 console.log(canvas["_objects" ].length) 我只返回了 7 个。
我可以展开最后两个元素并查看它们。但是当我尝试直接访问它们时(通过将值 9 硬编码到迭代这个数组的循环中,而不是依赖于 length 属性)我得到一个错误,好像最后两个元素不存在一样。
但如果它们不存在,萤火虫怎么能看到它们呢?它们已被添加到画布中。
我什至不知道从哪里开始,从来没有见过这样的东西。
【问题讨论】:
-
这些元素可能会在您访问数组后添加。在
console本身中,您会看到图标i,上面写着“刚刚评估了值”,这意味着最初当您记录数组时有 7 个元素,但得到了 2 个新元素稍后添加,console.log 打印当前值 -
谢谢 abhishekkannojia 我会尝试测试一下。 Sagar V 我会看看我是否可以在 jsfiddle 中重新创建它
标签: javascript arrays canvas fabricjs