Skip to content

Instantly share code, notes, and snippets.

@andreyselin
Last active February 4, 2020 02:23
Show Gist options
  • Save andreyselin/658084c05d4134996712cdcce73a3ae3 to your computer and use it in GitHub Desktop.
Save andreyselin/658084c05d4134996712cdcce73a3ae3 to your computer and use it in GitHub Desktop.

Напишите алгоритм валидации 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) так же невалидна.

@kickboxer
Copy link

function checkIP(ip) {
  if (typeof ip !== 'string') return false;
  const arr = ip.split('.');
  if (arr.length !== 4) return false;
  return arr.every(n => n >= 0 && n < 256);
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment