From 97ad2873caa29c5d7a4c14dfb025746ad22c96c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D1=80=D0=B3=D0=B0=D1=80=D0=B8=D1=82=D0=B0=20?= =?UTF-8?q?=D0=A1=D0=BC=D0=B8=D1=80=D0=BD=D0=BE=D0=B2=D0=B0?= <158091165+margarita0206@users.noreply.github.com> Date: Tue, 25 Jun 2024 20:44:23 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B2=D0=BE=D0=B5=20?= =?UTF-8?q?=D0=B4=D0=BE=D0=BC=D0=B0=D1=88=D0=BD=D0=B5=D0=B5=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5=20(#2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 3 +-- js/functions.js | 29 ++++++++++++++--------------- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/index.html b/index.html index c521fd2..33c46ee 100644 --- a/index.html +++ b/index.html @@ -7,7 +7,6 @@ Кекстаграм - @@ -234,6 +233,6 @@

Изображение успешно загруже

Не удалось загрузить данные

- + diff --git a/js/functions.js b/js/functions.js index 999e2a2..f86d28f 100644 --- a/js/functions.js +++ b/js/functions.js @@ -1,21 +1,20 @@ -function checkString(string, maxNumber) { - return string.length <= maxNumber; -} +const checkString = (string, maxLength) => string <= maxLength; + +checkString('проверяемая строка', 20); //true +checkString('проверяемая строка', 18); //true +checkString('проверяемая строка', 10); //false -checkString('проверяемая строка', 20); -checkString('проверяемая строка', 18); -checkString('проверяемая строка', 10); +function isPalindrom(checkedString) { + const normalizeString = checkedString.replaceAll(' ', '').toLowerCase(); + let reversed = ''; -function stringPalindrom(checkedString) { - const normalizeString = checkedString.replaceAll().toUpperCase(); - let string = ''; for (let i = normalizeString.length - 1; i >= 0; i--){ - string += normalizeString[i]; + reversed = reversed + normalizeString[i]; } - return normalizeString === string; + return checkedString === reversed; } -stringPalindrom('топот'); -stringPalindrom('ДовОд'); -stringPalindrom('Кекс'); -stringPalindrom('Лёша на полке клопа нашёл '); +isPalindrom('топот'); //true +isPalindrom('ДовОд'); //true +isPalindrom('Кекс'); //false +isPalindrom('Лёша на полке клопа нашёл '); //true From b1cf9c29fb2a3fe9603493e449b340f2d129a523 Mon Sep 17 00:00:00 2001 From: "rit1992@mail.ru" <158091165+margarita0206@users.noreply.github.com> Date: Thu, 4 Jul 2024 11:28:37 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=93=D0=B5=D0=BD=D0=B5=D1=80=D0=B8=D1=80?= =?UTF-8?q?=D1=83=D0=B5=D0=BC=20=D0=B2=D1=80=D0=B5=D0=BC=D0=B5=D0=BD=D0=BD?= =?UTF-8?q?=D1=8B=D0=B5=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/main.js | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) diff --git a/js/main.js b/js/main.js index e69de29..9da6848 100644 --- a/js/main.js +++ b/js/main.js @@ -0,0 +1,100 @@ +const POSTS_COUNT = 25; + +const COMENT_NAMES = [ + 'Анна', + 'Александр', + 'Светлана', + 'Юра', + 'Сергей', + 'Полина', + 'Олег', + 'Андрей', + 'Юля', + 'Анастасия', + 'Соня', + 'Татьяна', + 'Алексей', + 'Артем', + 'Вера', + 'Ирина', + 'Николай', + 'Ева', + 'Ольга', + 'Алиса' +]; + +const POSTS_COMMENTS = [ + 'Всё отлично!', + 'В целом всё неплохо. Но не всё.', + 'Когда вы делаете фотографию, хорошо бы убирать палец из кадра. В конце концов это просто непрофессионально.', + 'Моя бабушка случайно чихнула с фотоаппаратом в руках и у неё получилась фотография лучше.', + 'Я поскользнулся на банановой кожуре и уронил фотоаппарат на кота и у меня получилась фотография лучше.', + 'Лица у людей на фотке перекошены, как будто их избивают. Как можно было поймать такой неудачный момент?!' +]; + +const DESCRIPTIONS = [ + 'Моя жизнь меняется, потому что меняю ее я.', + 'Не слушай никого, лишь твое сердце, оно все знает.', + 'Чтобы достичь новых берегов, мы должны плыть, а не дрейфовать.', + 'Навстречу новым приключениям.', + 'Каждое мгновенье жизни — еще одна возможность.', + 'Пусть эта фотография будет здесь', + 'Одна хорошая мысль утром меняет смысл целого дня.', + 'Как мало нужно для счастья.', + 'Этой фотографии описание не нужно' +]; + +const getRandomInteger = (a, b) => { + const lower = Math.ceil(Math.min(a, b)); + const upper = Math.floor(Math.max(a, b)); + const result = Math.random() * (upper - lower + 1) + lower; + + return Math.floor(result); +}; + +function getUniqueInteger (min,max) { + const previousValues = []; + + return function () { + if (previousValues.length >= (max - min + 1)) { + return null; + } + let currentValue = getRandomInteger(min, max); + while (previousValues.includes(currentValue)) { + currentValue = getRandomInteger(min, max); + } + previousValues.push(currentValue); + + return currentValue; + }; +} + +const getRandomArrayElement = (elements) => elements[getRandomInteger(0, elements.length - 1)]; + +const randomPostId = getUniqueInteger(1, 25); +const randomPostUrl = getUniqueInteger(1, 25); +const randomCommentID = getUniqueInteger(1, 500000); + +const createPost = () => { + + const randomPostDescription = getRandomArrayElement(DESCRIPTIONS); + + const createComment = () => ({ + 'id': randomCommentID, + 'avatar': `img/avatar-${getRandomInteger(1, 6)}.svg`, + 'message': getRandomArrayElement(POSTS_COMMENTS), + 'name': getRandomArrayElement(COMENT_NAMES), + }); + + return { + 'id': randomPostId(), + 'url': `photos/${randomPostUrl()}.jpg`, + 'description': randomPostDescription, + 'likes': getRandomInteger(15, 200), + 'comments': Array.from({length: getRandomInteger(0, 30)}, createComment), + }; +}; + +const randomPosts = Array.from({length: POSTS_COUNT}, createPost); + +console.log(randomPosts);