JSFiddle - React, Tailwind, and code Playground
HTML
<textarea id='input1'>☻☻Program A</textarea>
<textarea id='input2'>☺Program B</textarea>
<pre id='report'></pre>
JavaScript
var r = document.getElementById('report'),
t1 = document.getElementById('input1'),
t2 = document.getElementById('input2');
(t1.onkeyup = function(e) {
r.innerHTML = getReport(t1.value, t2.value);
})();
(t2.onkeyup = function(e) {
r.innerHTML = getReport(t1.value, t2.value);
})();
function uniqueCharacters(s1, s2) {
var uniqueChars = '', s1b = '', s2b = '', match = 0;
for (var i = 0; i < s1.length; i++) {
match = 0;
for (var j = 0; j < s2.length; j++) {
if (s1.charAt(i) == s2.charAt(j)) {
match = 1;
}
}
if (match == 0) {
s1b = '' + s1b + s1.charAt(i);
}
}
for (var i = 0; i < s2.length; i++) {
match = 0;
for (var j = 0; j < s1.length; j++) {
if (s2.charAt(i) == s1.charAt(j)) {
match = 1;
}
}
if (match == 0) {
s2b = '' + s2b + s2.charAt(i);
}
}
var nonUnique = s1b + s2b;
var unique = nonUnique.split('').filter(function(item, i, ar){ return ar.indexOf(item) === i; }).join('');
return unique;
}
function getReport(s1, s2) {
var uniqueChars = uniqueCharacters(s1, s2);
return ('Unique Characters: ' + uniqueChars + '\nScore: ' + uniqueChars.length);
}