Объясните пожалуйста что происходит в этой части кода

Меня интересует то что происходит после menu.map, не понимаю что такое x и xi и => и как я могу сделать так чтобы кнопки в telegram боте были не в один ряд, а в два

 if (level == 23){ //интерфейс руководителей выбор команды из списка
    var menu = [];       
    var test_arr = sheet.getRange('T12:T15').getValues(); //массив данных для клавиатуры
    for (var i = 0; i<test_arr.length; i++){
      menu[i] = String(test_arr[i][0]);
    }     
    menu.push("Назад")
    //menu.unshift("Отдел")
    var payload = {
      'method': 'sendMessage',
      'chat_id': String(chatId),
      'text': message, 
      'parse_mode': 'HTML',
      'reply_markup': JSON.stringify({             //клавиатура собирается из массива
        'keyboard': menu.map((x, xi) => ([{
                             text: x + "ᅠᅠ", //добавляем 2 невидимых символа в текст по которым будем определять что за команда идет
                             callback_data: String(xi + 1),
                             }])
      ),'resize_keyboard': true
    })        
  }  
}

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

Автор решения: KoVadim

Символ, который Вам непонятен (=>) - это так называемые стрелочные функции - модная штука современного JavaScript - это просто компактная форма записи анонимных функций. Ничего более.

А вот как сделать кнопки в ряд - тут, если я правильно понимаю документацию, нужно сделать массив массивов кнопок - https://core.telegram.org/bots/api#replykeyboardmarkup

→ Ссылка