isNaN(42) // false
>>> posts = ['20210627/habr', '20210501/pervomay', '20210509/pobeda']
>>> sorted(posts)
['20210501/pervomay', '20210509/pobeda', '20210627/habr']
// неповторимый оригинал
arr.reduce((acc, n, i) => (
(!i || n === 1) && acc.push([]),
acc[acc.length - 1].push(n),
acc
), [])
// жалкая традиционная пародия
arr.reduce((acc, n, i) => {
if (!i || n === 1) acc.push([]);
acc[acc.length - 1].push(n);
return acc;
}, [])
pc.html
, про WebSocket уже ответили.
Какой чекбокс должен отключать опцию размера М ?
В общем решение – слушать события изменения инпута и в слушателе изменять доступность опций.