У меня есть массив объектов, которые могут быть нулевыми или геймпадом:
let pads : (Gamepad | null)[] = navigator.getGamepads()
И если первая запись - Геймпад (и не ноль), я хочу выполнить некоторый код
let pad: Gamepad | null = gamepads[0]
if (pad) {
myOtherCode(pad)
}
Эта нулевая проверка работает, но мне нужно создать дополнительную временную переменную. Есть ли способ просто проверить нулевую первую запись массива напрямую?
if (gamepads[0]) {
myOtherCode(gamepads[0])
}
Аргумент типа 'Геймпад | null 'нельзя назначить параметру типа' Gamepad '.
Тип 'null' нельзя назначить типу 'Gamepad'
Мой другой код - это просто функция, которая ожидает геймпад:
function myOtherCode(g:Gamepad) {
console.log(g)
}