What getRangeList actually does (and doesn't do)
Sheet.getRangeList() takes an array of A1-notation strings and returns a RangeList object. Every setter you call on that object — setBackground, setBorder, setFontWeight, setValue, setNumberFormat, insertCheckboxes — fans out to all the member ranges in a single batch. Sheets queues one network roundtrip instead of one per range, which matters when your script is already bumping against the 6-minute execution limit.
The catch that trips people up every time: RangeList has no getValues(), no getValue(), no getFormulas(). Those methods do not exist on the object. If you call one you will get a TypeError at runtime, not a compile-time hint. The object is write-only from a data perspective. For reading you drop back to getRanges() and iterate.
I keep a comment near every getRangeList call that says 'write-only' just to save my future self the five-minute debugging session.