An unnecessarily thorough analysis
When you look at the behavior of the methods on a d3.selection
, they fall into one of two categories:
- those that create a new selection, e.g.,
.filter()
,.exit()
,.enter()
,.append()
, etc.; and - those that mutate the existing selection, e.g.,
.attr()
,.style()
,on()
, etc.
Question: Are these categories disjoint and exhaustive?