title: What is causing the error "Uncaught TypeError: number is not a function"
body: <p>I have an onchange event that updates a form, and in the updating process it calls a function to calculate shipping. I'm not sure why, but I'm getting the following error when I try to call the function:</p>
  
  <p><code>Uncaught TypeError: number is not a function</code></p>
  
  <p>The function, <code>shipping</code>, looks like this:</p>
  
  <pre><code>function shipping( weight )
  {
      var flat
  
      switch( weight )
      {
          case 1:
          case 2:
          case 3:
              flat = 32.00;
              break;
  
          case 4:
              flat = 18.50;
              break;
  
          case 5:
              flat = 15.80;
              break;
  
          case 6:
              flat = 14.00;
              break;
  
          case 7:
              flat = 12.71;
              break;
  
          case 8:
              flat = 11.75;
              break;
  
          case 9:
              flat = 11.00;
              break;
  
          case 10:
              flat = 10.40;
              break;
  
          case 11:
              flat = 9.91;
              break;
  
          case 12:
              flat = 9.50;
              break;
  
          case 13:
              flat = 9.15;
              break;
  
          case 14:
              flat = 8.86;
              break;
  
          case 15:
              flat = 8.86;
              break;
  
          case 16:
              flat = 8.38;
              break;
  
          case 17:
              flat = 8.18;
              break;
  
          case 18:
              flat = 8.00;
              break;
  
          case 19:
              flat = 7.84;
              break;
  
          case 20:
              flat = 7.70;
              break;
  
      } // switch
  
      var flat_fee = flat * weight;
      var mile_fee = distance * 0.90;
  
      var shipping_fee = flat_fee + mile_fee;
      simpleCart.shippingTest = shipping_fee;
      return shipping_fee;
  } // shipping
  </code></pre>
  
  <p>I'm passing in <code>1</code> right now. The variable <code>distance</code> is coming from an ajax call that is completed before this function is run. That function looks like this:</p>
  
  <pre><code>function get_distance( zip )
  {
  
      $.getJSON(
          'distance.php',
          { zip:zip },
          function(json)
          {
              distance = json 
          })
  
  } // get_distance
  </code></pre>
  
  <p>I've checked to make sure the variable <code>distance</code> is set. </p>
  
  <p>The console says the uncaught type error is happing at the line where I call <code>shipping(1)</code>. Any thoughts as to why that's happening?</p>