Разница между использованием typeof и оператора in при типизации переменных заключается в их функциях.
Оператор typeof используется для проверки типа переменной во время выполнения. 1 С его помощью можно определить простые типы данных: string, number, boolean и symbol. 1 При этом оператор typeof не подходит для проверки типа структур, так как все структуры будут возвращать «object». 3
Оператор in проверяет наличие свойства в объекте. 1 Это позволяет сузить тип объекта до конкретного типа, имеющего это свойство. 1
Таким образом, typeof предназначен для работы с простыми типами данных, а in — для сужения типа объекта до определённого типа на основе наличия конкретного свойства.