JavaScript Мтоды массивов (часть 2)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Методы Массивов - 2</title>
</head>
<body>
<script>
// ## Основные Методы Массивов - 2
const people = [
{ name: 'Станислав', year: 2000 },
{ name: 'Василий', year: 1986 },
{ name: 'Александр', year: 1990 },
{ name: 'Владимир', year: 2004 },
];
const comments = [
{ text: 'Отличный пост!', id: 523423 },
{ text: 'Мне нравится', id: 823423 },
{ text: 'Продолжай в том же духе', id: 2039842 },
{ text: 'Все аццццтой !!!!!', id: 123523 },
{ text: 'Нормально', id: 542328 }
];
//## Методы Some и Every
// Array.prototype.some() -> Проверить, что по крайней мере одному из людей исполнилось 16 лет.
const isSixteen = people.some(person => new Date().getFullYear() - person.year >= 16);
console.log(isSixteen);
// Array.prototype.every() -> Проверить, что каждому из людей исполнилось 16 лет.
const everySixteen = people.every(person => new Date().getFullYear() - person.year >= 16);
console.log(everySixteen);
// ## Array.prototype.find() -> Возвращает первый элемент массива, который удовлетворяет нашим требованиям
// Задача: найти комментарий, c номером ID - 823423
const commentId = comments.find(comment => comment.id === 823423);
console.log(commentId);
// ## Array.prototype.findIndex() -> Возвращает индекс первого элемента, который удовлетворяет нашим требованиям
// Задача: удалить из массива комментарий с номером ID 123523
// 1. Находим индекс нужного нам комментария
const commentIndex = comments.findIndex(comment => comment.id === 123523);
console.log(commentIndex);
// 2. Удаляем комментарий из массива (используем метод spice())
// comments.splice(commentIndex, 1);
// console.log(comments);
// 2.1 Удаляем комментарий из массива (используем метод slice() и оператор spread)
// slice() создает новый массив, куда копирует елементы начиная с индекса старт и до end (не включая end)
const commentsOne = comments.slice(0, commentIndex);
const commentsTwo = comments.slice(commentIndex + 1);
console.log(commentsOne);
console.log(commentsTwo);
// используем оператор spread для копирования всех элементов первого и воторого массива в новый массив commentsFinal:
const commentsFinal = [...commentsOne, ...commentsTwo];
console.log(commentsFinal);
console.log(comments);
</script>
</body>
</html>
Комментарии
Отправить комментарий