Add fallbacks

Should this be guarded by `hasOwnProperty` or switched to `Object.keys`?