Вы можете использовать свойство white-space: pre-wrap
для отображения текста с переносами строк.
div {
white-space: pre-wrap;
}
Пример:
function sanitize(string) {
const map = {
"&": "&",
"<": "<",
">": ">",
'"': """,
"'": "'",
"/": "/"
};
const reg = /[&<>"'/]/gi;
return string.replace(reg, match => map[match]);
}
function display() {
let elem = document.getElementById("content");
document.getElementById("display").innerHTML = sanitize(elem.value);
}
<textarea id="content">
123
345
789</textarea
>
<div id="display"></div>
<button onclick="display()">Display</button>