в песочнице работает без ошибок
А чего бы ему ошибаться? Песочница типы не проверяет, только компилирует TS в JS, чтобы его можно было исполнить.
В итоге остаётся только это*:
const lists = [[1,4,5],[1,3,4],[2,6]]
function mergeKLists(lists) {
if(lists.length) return lists.flat(Infinity)
return null
};
console.log(mergeKLists(lists))
А если уж совсем упростить, то вот это:
[[1,4,5],[1,3,4],[2,6]].flat(Infinity)
Тут падать нечему.
А вот если в нормальной IDE такое написать, сразу видно, что у вас в
lists
ерунда содержится:
Функция на вход ожидает массив, внутри которого содержится объект класса
ListNode (или
null), а вы передаёте массив массивов
number, на что вам TS и указывает (но окольными путями).
Ну и вернуть вы должны
ListNode, а ваша реализация возвращает всё тот же массив из
number.
Задача, на самом деле, какая-то странная - непонятно откуда вообще вылез этот ListNode и зачем он. За скобками осталась важная часть про то, что вам нужно вдобавок реализовать сериализацию ListNode <-> массив. Хотя, по сгенерированной заготовке решения предполагается, что вам уже на вход придут данные в нужном виде и вернуть вам нужно объект ListNode - может, leetcode сам этот класс и его сериализацию-десериализацию реализует?
* Класс тоже остаётся, но он никак в коде не используется, поэтому я его опустил.