title: Why do I need a polyfill with Typescript?
body: <p>Lets say I want to use <code>Object.values()</code>. In order to use this, I have to set <code>"lib":["es2017"]</code>. But then I have <code>"target":"es6"</code>. </p>
  
  <p>The way I read this as a new Typescript user is that I am writing with <code>es2017</code> methods and it's outputting <code>es6</code> code. </p>
  
  <p>So my question is this, why do I need a polyfill, and how do I select a reliable one?</p>