title: JSLint unexpected 'that' message
body: <p>I've just started using JSLint to make sure that the JavaScript code I'm creating at least meets some standards and I've got a confusing message:</p>
  
  <pre><code>JSLint: Unexpected 'that'.
  </code></pre>
  
  <p>The code is part of a solution to implement a progress bar, part of which is this object that handles timers and callbacks and is as follows (this is an extract from the beginning of a larger file, I can add the whole file if required):</p>
  
  <pre><code>var ProgressHandler = function () {
      "use strict";
  
      // Build a new object
      var that = {};
  
      // Add basic properties
      that.taskid = 0;
      that.timerid = 0; // Timer ID used to push refreshes
      that.progressUrl = ""; // URL to invoke to read progress
      that.interval = 500; // The interval for progress refresh
      that.taskProgressCallback = null; // The user-defined callback that refreshes the UI 
      that.taskCompletedCallback = null; // The user-defined callback that finalizes the call 
  
      // Set progress url
      that.setProgressUrl = function (url) {
          that.progressUrl = url;
          return this;
      }
  
      // Set frequency of refresh
      that.setInterval = function (interval) {
          that.interval = interval;
          return this;
      };
  </code></pre>
  
  <p>The message appears on the line that begins <code>that.setInterval</code>. There are further uses of that I but JSLint also says that it stops processing at this point. I've tried searching for this message but it's not listed specifically here or on jslinterrors.com.</p>
  
  <p>Why is this appearing and what can I do to fix it? Or should it just be ignored?</p>