Проблема в выводе массива при помощи js

Есть код который алертит каждый элемент массива.Так собственна в чём проблема , все элементы выводит нормально , но после вывода последнего элемента он выводит undefined.

Можете объяснить почему так происходит?

let arr = [5, 3, 8, 1];

function filterRange(arr) {
  return arr.forEach((item) => {
    alert(item);
  });
}

alert(filterRange(arr));
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Ку зяблики</title>
</head>
<body>
    <script src="script.js">
    </script>
</body>
</html>


Ответы (2 шт):

Автор решения: Aram Gasparyan

alert(filterRange(arr)); удали этот алерт

→ Ссылка
Автор решения: Voprositel

Потому что alert() возвращает undefined.

Можно так:

let arr = [5, 3, 8, 1];

function filterRange(arr) {
  return arr.forEach((item) => {
    alert(item);
  });
}

filterRange(arr);

→ Ссылка