From 39c306b41536a2024b9c9fd368627815cce338bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9=20=D0=A1=D0=B5?= =?UTF-8?q?=D0=BB=D0=B5=D0=B7=D0=BD=D0=B5=D0=B2?= Date: Wed, 20 Nov 2024 19:55:17 +0700 Subject: [PATCH 1/2] Js initial task --- index.html | 2 +- js/functions.js | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 js/functions.js diff --git a/index.html b/index.html index 8a8acfa..d6630fe 100644 --- a/index.html +++ b/index.html @@ -6,12 +6,12 @@ + Кекстаграм
-

Фильтр фотографий

diff --git a/js/functions.js b/js/functions.js new file mode 100644 index 0000000..9f59667 --- /dev/null +++ b/js/functions.js @@ -0,0 +1,40 @@ +/* eslint-disable no-unused-vars */ + +/** + * Функция, которая проверяет, соответствует ли длина строки указанному максимуму. + * + * @param {string} str - Строка для проверки. + * @param {number} maxLen - Максимальная допустимая длина строки. + * @return {boolean} Возвращает true, если длина строки меньше или равна maxLen, иначе false. +*/ +function checkStringLength(str, maxLen) { + return str.length <= maxLen; +} + +/** + * Функция, которая проверяет, является ли строка палиндромом. + * Игнорирует пробелы и регистр символов. + * + * @param {string} str - Строка для проверки. + * @return {boolean} Возвращает true, если строка является палиндромом, иначе false. +*/ +function isPalindrome(str) { + const normalizedString = str.replace(/\s+/g, '').toLowerCase(); + return normalizedString === normalizedString.split('').reverse().join(''); +} + +/** + * Функция, которая извлекает цифры из строки и возвращает их в виде целого числа. + * Если входные данные являются числом, обрабатываются как строка. + * Если цифры отсутствуют, возвращает NaN. + * + * @param {string|number} input - Входные данные для обработки. + * @return {number} Целое число, если цифры найдены, иначе NaN. +*/ +function extractNumbers(input) { + if (typeof input === 'number') { + input = Math.abs(input).toString(); + } + const digits = input.match(/\d+/g)?.join('') || ''; + return digits ? parseInt(digits, 10) : NaN; +} From bf21abf7a1eff7a204f863fcb2851b7c91a06e46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9=20=D0=A1=D0=B5?= =?UTF-8?q?=D0=BB=D0=B5=D0=B7=D0=BD=D0=B5=D0=B2?= Date: Wed, 20 Nov 2024 20:40:17 +0700 Subject: [PATCH 2/2] Rule for no-unused-vars [- warn] added. --- .eslintrc | 4 ++++ js/functions.js | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.eslintrc b/.eslintrc index 3ae897a..4c020d6 100644 --- a/.eslintrc +++ b/.eslintrc @@ -12,5 +12,9 @@ globals: noUiSlider: readonly Pristine: readonly +rules: + no-unused-vars: + - warn + extends: "htmlacademy/vanilla" diff --git a/js/functions.js b/js/functions.js index 9f59667..d2d9d1f 100644 --- a/js/functions.js +++ b/js/functions.js @@ -1,5 +1,3 @@ -/* eslint-disable no-unused-vars */ - /** * Функция, которая проверяет, соответствует ли длина строки указанному максимуму. *