JSFiddle - React, Tailwind, and code Playground

HTML

<div id="container"></div>

JavaScript

function test(s1,s2,s3){
    var c=document.getElementById("container");
	s1=s1.split("");
	s2=s2.split("");
	s3=s3.split("");
	
	while(s1.length && s2.length){
		if(s1[0]!=s3[0] && s2[0]!=s3[0]){
			c.innerHTML=c.innerHTML+"false<br>";
			return;
		}
		if(s1[0]!=s2[0] && s1[0]==s3[0]){        // normal case 1
			s1.shift();
		}else if(s1[0]!=s2[0] && s2[0]==s3[0]){    // normal case 2
			s2.shift();
		}else if(s1[0]==s1[1] && s1[0]==s2[1]){
			s1.shift();
		}else if(s1[1]==s3[1]){
			s1.shift();
		}else{
			s2.shift();
		}
		s3.shift();
	}
	
	if(s1.join("")==s3.join("") || s2.join("")==s3.join("")){
		c.innerHTML=c.innerHTML+"true<br>";
	}else{
		c.innerHTML=c.innerHTML+"false<br>";
	}
}

test("abcd","xyz","axybczd");
test("xy","xxxy","xxyxxy");
test("acd","bac","bacadc");
test("cacb","cacd","cacacbcd");
test("aa","abaab","aabaaab");
test("xxyyxxab","xxyyxxcd","xxyyxxxaxyybxxcd");
test("accc", "bcbc", "abcccbcc");
test("ab","c","cba");
test("abc","abc","abcabc");
test("abc","abc","abacbc");
test("abc","def","adbecf");
test("aaa","aaa","aaaaaa");
test("aa","ab","abaa");
test("ab","aa","abaa");