Напишите алгоритм валидации IPv4 адреса в Dot-десятичной нотации.
IP является валидным, если состоит из четырех октетов, со значениями от 0 до 255 включительно.
На вход функции подается строка. На выходе ожидается булево значение true
или false
Примеры
Валидные:
1.2.3.4
, 123.45.67.89
Невалидные:
1.2.3
, 1.2.3.4.5
, 123.456.78.90
, 123.045.067.089
Обратите внимание, что запись с ведущими нулями (например, 01.02.03.04
) так же невалидна.
return "123.045.067.089".split('.').reduce((m,v)=>{ return m + (v.charAt(0) !== '0' && parseInt(v) >= 0 && parseInt(v) <= 255 ? 1 : 0) }, 0) === 4