gpt4 book ai didi

javascript - 为什么我的 SVG 中的 .selectAll() D3 创建的圆圈使用 .length 被称为 1 个元素?

转载 作者:行者123 更新时间:2023-12-02 15:06:23 25 4
gpt4 key购买 nike

我怀疑答案介于我对自己实际工作的对象类型的无知和 D3 和/或 SVG 的内在黑暗之间。

我可以在屏幕上看到 30 个圆圈。所以我像这样进入控制台。

var circles  = d3.select("#svg1").selectAll("circle");  
>undefined

circles;
>[Array[30]]...

circles.length;
>1

我知道我的目标是正确的元素,因为在集合上执行 .remove() 会将它们从屏幕上清除。但是计数是怎么回事?

最佳答案

var circles = d3.select("#svg1").selectAll("circle");

circles 是一个数组的数组,因此长度为 1。这是外部数组的长度。如果您想获取所选圆圈的数量,那么您应该使用d3的内置方法size

var count = d3.select("#svg1").selectAll("circle").size();

这将为您提供预期的结果。

关于javascript - 为什么我的 SVG 中的 .selectAll() D3 创建的圆圈使用 .length 被称为 1 个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35101259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com