.textContent does exactly what you ask, however, as I understand you want to concatenate only the text of direct child text nodes and do not include text of child tags.
Still can't understand the use case, that's why textContent works as it is. Nevertheless, here is an example how you can achieve what you want:
function getElementText(element) {
let res = '';
[].forEach.call(element.childNodes, node => res += node.nodeType === Node.TEXT_NODE ? node.textContent : '');
return res;
}
Anyway in your example, you won't get Welcome to, you will get Welcome to (With spaces around, Markdown doesn't displays them to you here). If you want to remove extra spaces, you could apply also trim().