каким образом допустим в этой функции мы используем массив(объект) не объявив его
Объявляют переменные. Здесь обошлись без переменной.
В квадратных скобках – «литерал» – буквальное значение.
С числами, например, не вызывает вопросов, когда пишут просто
5
?
return 5;
— тут всё нормально.
То же и с массивами и объектами:
[1, 2, 3] // массив
{a: 1, b: 2} // объект
return [1, 2, 3]; // вернули массив
return {a: 1, b: 2}; // вернули объект
return [1, 2, 1 + 2]; // вернули массив, где что-то посчитали налету
return {a: 1, b: 1 + 1}; // вернули объект, что сложили в последний момент