I’m not sure you need the JSON ScriptAttribute in this case. You are correct you would need to access these properties based on the name value you’re setting.
If you just need a simple ScriptAttribute with an array of strings, all that you would need to do is:
If you REALLY need specifically an array of different types of attributes, you may want to have a look at using Object.Keys as a way to iterate over everything:
Yes, you will be able to access the array entities when logging them to the console, as well as when you’re defining them within the editor.
I would say that there is no built-in way for that as JSON objects don’t really have index values. You can generate them in a way by using Object.Keys and then using that array of the key names to iterate over the object itself.
If you mean the editor, after parsing the script, you should be provided with a field to specify the length of the array. After doing that, you can just fill in the resulting boxes with the entities you need. Here is an example from one of my projects showing what it looks like: