← back to v153 · iterator-join
conformance · v153
v153 · iterator-join — conformance probe
7 assertions drawn from the spec. Each is a single contract the spec text makes. Pass/fail reflects what this browser executed; blocked means the contract was not run because it needs user mediation, hardware, or another unavailable precondition. Open the page in Chrome stable / canary / Firefox / Safari to compare.
0
pass
0
fail
0
blocked
7
total
| id | contract | kind | verdict | detail |
|---|---|---|---|---|
iterator-prototype-is-reachable |
The method is defined on %Iterator.prototype%, which every built-in iterator inherits from and which the Iterator global exposes. Everything else here is read off that object. spec ↗ | script | … | |
iterator-helpers-are-present |
join is a terminal operation on the helper pipeline. Without map/filter/take there is nothing for it to terminate, so the helpers are the precondition for the feature being useful at all. spec ↗ | script | … | |
iterator-join-exists |
The feature itself: a join method on %Iterator.prototype%. spec ↗ | script | … | |
iterator-join-takes-one-argument |
The separator is the single declared parameter, matching Array.prototype.join's arity. A different length would mean a different signature than the proposal defines. spec ↗ | script | … | |
iterator-join-matches-array-join |
The whole contract in one check: for a spread of inputs and separators, joining an iterator must produce exactly what joining the equivalent array produces — including the empty-string treatment of null and undefined and the default comma. spec ↗ | script | … | |
array-join-maps-nullish-to-empty-string |
The reference behaviour the proposal is defined against, asserted on the platform's own Array.prototype.join so the demos can derive their rules from it rather than restating them. spec ↗ | script | … | |
join-uses-tostring-so-symbols-throw |
Elements are converted with ToString, which has no symbol exemption. A join that returned 'Symbol(s)' would be using String() rather than ToString and would be wrong in exactly the way a hand-written shim usually is. spec ↗ | script | … |