JSFiddle - React, Tailwind, and code Playground

HTML

<div id="return"></div>

JavaScript

var content = '<p>7</p><p>77</p><p><br></p><p><a href="http://example.com" rel="nofollow">http://example.com</a></p><p><br></p><p><a href="example.com" target="_blank">example.com</a></p><p><br></p><p><a href="ftp://localhost">ftp://localhost</a></p><p><br></p><p><a href="localhost">localhost</a><br></p>';

var addProtocolToLinks = function(URL){
	var protocols = ['http', 'https', 'ftp', 'sftp', 'ssh', 'smtp'];
	var withProtocol = false;
	if (URL.length > 0){
      
	  protocols.forEach(function(el) {
	    if (URL.slice(0,4).indexOf(el) > -1){
	      withProtocol = true;
	    }
	  });
      var newURL = URL;
	  if (!withProtocol){
          console.log(URL);
        newURL = 'http://' + URL;
      }
	  console.log(newURL + '   ' + URL);
	  return newURL;
	}
};

// Create a container with unique ID put your content in
var container = document.createElement('div');
container.setAttribute("id", "content");
container.innerHTML = content;

var parser = new DOMParser();
var doc = parser.parseFromString(container.outerHTML, "text/html");
var links = doc.getElementsByTagName("a");
for(var i=0; i<links.length; i++) {
    var link = links[i];
    var url = link.getAttribute('href');
    links[i].setAttribute('href', addProtocolToLinks(url));
    console.log('result: ' + url);
}
console.log('result html: ');
console.log(doc); 
document.getElementById('return').innerHTML = doc.getElementById("content").innerHTML;