I've already seen below referenced questions before writing this post.
how-to-pause-a-settimeout-call
how-to-pause-a-settimeout-function
how-to-pause-a-function-in-javascript
delay-running-a-function-for-3-seconds
Question
I've below code on which I want after some time my setTimeout function is paused. Then re-continue.
 typingCallback(that) {
     let total_length = that.typewriter_text.length;
     let current_length = that.typewriter_display.length;
     if (that.rewind === false) 
     {
         if(total_length  == current_length) 
         {
             // Here I want to pause this function for 3 seconds
            clearTimeout(3000);
            that.rewind = true;
         }
         else
         {
             that.typewriter_display += that.typewriter_text[current_length];
             console.log('Loop#1: ' + that.typewriter_display + " " + 'Length' + current_length);
         }
      } 
      else if (that.rewind === true)
      {
          if(current_length == 0) 
          {    
              that.rewind = false;
          }
          else
          {
              that.typewriter_display = that.typewriter_display.slice(0, -1);
              console.log('Loop#2: ' + that.typewriter_display + " " + 'Length' + current_length);
          }
      }
      setTimeout(that.typingCallback, 75, that);
   }
 
    