Michael Day (2013-04-23T01:30:55.000Z)
github at esdiscuss.org (2013-07-12T02:26:56.447Z)
Apologies if I've missed something obvious, but is there any explicit specification of how this works in Mozilla: ```js xs = [1, 2, 3]; xs[1] = xs; alert(xs.join()) // prints "1,,3" ``` It even works when the recursion is less direct, like this: ```js xs = [1, 2, 3]; ys = [1, xs, 3]; xs[1] = ys; alert(xs.join()) // prints "1,1,,3,3" ``` Apparently `Array.toString()` returns empty string if it detects it is already inside an invocation of itself?