Not to drag this on too long...
KM supports arrays and has for quite some time.
No, that's not what I want.
What I want is to associate all my stock tickers with an associated URL. That's ALL. And I achieved that. Problem solved.
If I did want KM to create a record (or struct, or array, if you prefer) I could do that. Just generate a dictionary named with my ticker as the key, and have its value be another dictionary which holds all the key/value pairs holding related info. I would then have a dictionary of dictionaries. I could also have an array of these dictionaries like what you describe. KM makes it relatively easy to get an array of keys, or an array of values, or both from a dictionary. I could then get an array of keys from the dictionary, sort it, and use that sorted list to grab the values from the dictionary. But that's not what I wanted.
And to clarify things a bit, a dictionary is not an array. The Python dictionary definition is similar in other programming languages: "A dictionary is an associative array (also known as hashes). Any key of the dictionary is associated (or mapped) to a value. The values of a dictionary can be any Python data type. So dictionaries are unordered key-value-pairs." This definition applies to KM.
JavaScript doesn't have a structure called a Dictionary, but it has Associative Arrays: "...sometimes this is called a hash or map structure or a dictionary object. An associative array is simply a set of key value pairs." Nothing magic here. KM's Dictionaries are key/value pairs.
Regardless, I'm not writing my project in KM, I'm writing it in Python. KM is just a very handy tool to get some of the work done.