SpreadsheetApp.getActive().getSheetByName('данные').getDataRange()
                  
                  
                      .getValues().slice(1).reduce(function(p, c, i) {
                  
                  
                        var check = p.index.indexOf(c[0]);
                  
                  
                        if (check > -1)
                  
                  
                          p.values.push([c[0], c[1], c[2], check + 2, i + 2]);
                  
                  
                        return p;
                  
                  
                      }, {
                  
                  
                        values: [['Сайт', '[список сайтов], строка', '[данные], строка']],
                  
                  
                        index: index
                  
                  
                      })
                  
                  
                  
                  
                  
                  Почему я после проверки переменной check не могу сделать else и вернуть другой нужный мне результат?
                  
                  
                
По идее после else тоже должно возвращаться. Скинь полный код функции? Неясно вообще, что за index там. Что там изначально в нём. Чтобы лучше понять, можешь поставить точку останова перед var check = ... Или тупо напиши там console.log(c, p.index); Так он выведет тебе текущий элемент итерации (это строка, точнее массив значений-столбцов в ней) и этот пресовутый index, по которому фильтруется, добавлять ли значения или нет в результат.
Обсуждают сегодня