Вызов функции из другой функции - это абсолютно не плохое кодирование. Это часть того, для чего функции, на самом деле - разбивать логические процессы на более мелкие кусочки.
Вот пример того, как это может работать.
// Note: This is new ES6/ES7 syntax for writing JavaScript functions.
// I'm using it here because it's very terse.
const add = (a, b) => a + b;
const multiply = (a, b) => a * b;
const square = (a) => multiply(a, a);
const sumOfSquares = (arr) => {
let sum = 0;
arr.forEach(number => sum += square(number));
return sum;
};
В (упрощенном) примере выше Мы используем разные функции, чтобы разбить отдельные логические части проблемы на более мелкие, более управляемые проблемы. Например, чтобы вычислить сумму квадратов массива [1, 10, 12]
, мы хотим иметь возможность добавлять вещи и мы хотим иметь возможность возводить вещи в квадраты, поэтому рекомендуется создать функции для выполнения каждого из этих шагов. Возможно, мы даже захотим использовать другие функции внутри этих функций (например, вызов multiply
из square
).
Теперь, возможно ли go за бортом с созданием новых функций? Да. Старайтесь избегать написания нескольких одинаковых функций. Но в остальном ... go орехи!