title: Tersest way to create an array of integers from 1..20 in JavaScript
body: <p>What would be the tersest way to create this array:</p>
  
  <pre><code>var x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
           11, 12, 13, 14, 15, 16, 17, 18, 19, 20];
  </code></pre>
  
  <p>For example, a <code>for</code> loop:</p>
  
  <pre><code>var x = [];
  for (var i=1;i&lt;=20;i++) {
    x.push(i);
  }
  </code></pre>
  
  <p>Or a <code>while</code> loop:</p>
  
  <pre><code>var x = [], i = 1, endInt = 20;
  while (i &lt;= endInt) {
    x.push(i);
    i++;
  }
  </code></pre>
  
  <p>Would there be other examples that would be terser -- in other words -- less code? I'm thinking of things like in Ruby where the equivalent code I believe would be as simple as <code>1..20</code>. I'm not aware of syntax like that in JavaScript but I'm wondering if there are shorter ways to do that same thing.</p>
  
  <p><strong>UPDATE:</strong> I wasn't thinking of removing semicolons or <code>var</code> for answers in the question, but I have to admit the question implies that. I am more curious about algorithms than shaving bytes. Sorry if I was unclear! Also, making it into a function is simple enough, just slap <code>function range(start, end) { /* guts here */ }</code> around it and you're there. The question is are there novel approaches to the "guts."  </p>