I have a function template like this:
function (..., args: any) {...}
And I have a class called CreateLobbyParameter
:
export class CreateLobbyParameter {
userId: number;
gameMode: GameMode;
}
If given any
typed args parameter is not similar to CreateLobbyParameter
(e.g. {userId: 0, gameMode: 0}
, but not {userId:0}
); I wanna handle that situation.
I've tried typeof(arg as CreateLobbyParameter)
, but it returns the string "object"
for the parameter {userId: 0, gameMode: 0}
, and not CreateLobbyParameter.
Also, arg instanceof CreateLobbyParameter
returns false.
Treat it like JavaScript.
var userId = arg.userId;
var gameMode = arg.gameMode;
if (userId && gameMode) {
var myCreateLobbyParameter = new CreateLobbyParameter {
userId = userId,
gameMode = gameMode
}
}
Then you have a real CreateLobbyParameter
object to work with, or you can do whatever with a non-conforming argument.