j0hnik,
Alexandroppolus,
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<textarea id="area" rows="20">b
a
1111b
1111a</textarea><br>
<button id="btn">сортировать</button>
<script>
var dic = ['a','b','c','d','e','f','g','h','i','j','k','l'].reduce((obj, char, i) => (obj[char] = i, obj), {});
btn.onclick = e => {
var arr = area.value
.split(/\n/)
.map(el => el.split("").reduce((obj,char) => (char in dic ? obj.sum += dic[char] : obj.len++, obj), {str : el, len : 0, sum : 0}))
.sort((a,b)=>(a.len - b.len || b.sum - a.sum));
area.value = arr.map(Object.values).join('\n'); //строка, кол-во неизвестных, сумма известных
};
</script>
</body>
</html>