Дима

[i][j]

Каким надо быть садистом, чтобы называть переменные в примерах кода i и j? Они же отличаются только хвостиком внизу, а краем глаза вообще не различишь!

function matrixElementsSum(matrix) {
  let x = 0;
  for (let i = 0; i < matrix.length; i++) {
    for (let j = 0; j < matrix[i].length; j++) {
      if (matrix[i][j] === 0 && i + 1 < matrix.length) {
        matrix[i + 1][j] = 0;
      }
      x += matrix[i][j];
    }
  }
  return x;
}

Это выглядит ужасно, но люди почему-то всё продолжают так писать. Зачем?...

Конкретно про матрицы, подозреваю, пошло от математиков с их любовью к переменным из одной буквы, хотя на бумаге i и j тоже трудно отличить.