`[].forEach` has the same browser support as `Object.defineProperty`; might make this cleaner.