|                                                                              |  | /*! * escape-html * Copyright(c) 2012-2013 TJ Holowaychuk * Copyright(c) 2015 Andreas Lubbe * Copyright(c) 2015 Tiancheng "Timothy" Gu * MIT Licensed */
'use strict';
/** * Module variables. * @private */
var matchHtmlRegExp = /["'&<>]/;
/** * Module exports. * @public */
module.exports = escapeHtml;
/** * Escape special characters in the given string of html. * * @param  {string} string The string to escape for inserting into HTML * @return {string} * @public */
function escapeHtml(string) {  var str = '' + string;  var match = matchHtmlRegExp.exec(str);
  if (!match) {    return str;  }
  var escape;  var html = '';  var index = 0;  var lastIndex = 0;
  for (index = match.index; index < str.length; index++) {    switch (str.charCodeAt(index)) {      case 34: // "
        escape = '"';        break;      case 38: // &
        escape = '&';        break;      case 39: // '
        escape = ''';        break;      case 60: // <
        escape = '<';        break;      case 62: // >
        escape = '>';        break;      default:        continue;    }
    if (lastIndex !== index) {      html += str.substring(lastIndex, index);    }
    lastIndex = index + 1;    html += escape;  }
  return lastIndex !== index    ? html + str.substring(lastIndex, index)    : html;}
 |