On Mar 2, 11:23 am, Richard Quadling <[email protected]> wrote:
> 2009/3/2 kangax <[email protected]>:
>
>
>
>
>
> > On Mar 2, 9:58 am, Richard Quadling <[email protected]> wrote:
> >> Hi.
>
> >> This might be one of the those odd situations where there is no
> >> answer, but I have a hash coming from PHP via JSONP to JS/Prototype.
>
> >> In IE and FF, the ordering is maintained.
>
> >> In Chrome the order is not maintained.
>
> >> The key part is numeric and is NOT in order. The value is sorted 
> >> alphabetically.
>
> >> I suppose I could reverse the key/value pairing and work that way, but
> >> as the dox say, order is not guaranteed.
>
> >> Alternatively, as the data is going to be used for a <select> tag, can
> >> I sort the <option>s by value?
>
> > Look into `sortBy`:
>
> > $H({ a: 20, b: 1, c: 10 }).sortBy(function(pair){
> >  return pair.value;
> >  // or `return pair.key` (to sort by key)
> > });
>
> > [...]
>
> > --
> > kangax
>
> Argh!!! Thank you Kangax.
>
> I think this would be a great case for cross linking in the documentation.
>
> Hash can be thought of as an associative array, binding unique keys to
> values (which are not necessarily unique), though it can not guarantee
> consistent order its elements when iterating, "but sortBy() can
> alleviate this issue."

I actually find plain JS object sufficient most of the time for
"hashtable" purposes. There are edge cases of course, but the
performance gains of using plain objects (vs. `Hash` instances) can
not be underestimated.

>
> Is there a way I can commit changes to the documentation?

Sure. Create a ticket at Lighthouse and mark it as a documentation
related enhancement.

--
kangax
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to