In case this is helpful / you think others may have the same interpretation, I wanted to mention that I found this bit of explanation here, in combination with the block of code above it, a bit confusing.
My takeaway from the text is that *not* using d3.ascending would sort in case-sensitive alphabetical order. However, the code block above this text *uses* d3.ascending, and the sorting is still case sensitive. If I remove d3.ascending, the order remains the same.
(Wondering if this is an actual change in a newer version of D3?)
There was no change in D3, but the text describes what's happening in the cell below, not above. I'm updating it to try and remove the source of confusion; thanks for the feedback!
Are we using `.slice` here to make a copy as in "d3.shuffle modifies the array in-place for faster performance...If you want a shuffled array without mutating the original array, use `array.slice` to make a copy first?"