JSArray<T> class
This class wraps a Dart List and provides a JS-like behaviour. i.e. Storing an out-of-bounds element grows the list automatically.
class JSArray<T> { operator [](var index) { return data[index]; } operator []=(var index, var value) { if (index > data.length - 1) { data.length = index + 1; } return data[index] = value; } List<T> data = new List<T>(); }