[whatwg/url] "Otherwise, init is a string, then set ..." in list of steps for how to create a URLSearchParams object (#439)

In the [section 6.2](http://url.spec.whatwg.org/#interface-urlsearchparams), there is a list of steps an implementation must take as part of creating a URLSearchParams object. After defining some steps that apply depending on what kind of object `init` is, the 4th step is defined:

> 4. Otherwise, *init* is a string, then set *query*’s list to the result of parsing *init*.

How is one to interpret this sentence? Its first part seems... *assertive*, as opposed to being speculative, with regard to the type of object `init` is? Should there be an "if" between "Otherwise" and "*init*"?

Or does the specification intentionally assert that if `init` isn't any kind of object as defined by earlier steps in the list, then it *is to be considered* a string (possibly co-ercing the value, which would support how Firefox and Chrome behave here) and the implementation is then to parse it?

Because there isn't otherwise any mention of coercion/cast of *init* to a string, or is this left up to implementations, by intent?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/url/issues/439

Received on Wednesday, 22 May 2019 12:45:52 UTC