Тип массива, такой как string[]
, будет иметь вид:
Array<string>
Если у вас есть один из этих типов, вы можете просто установить его как ts.TypeReference
и передать его в TypeChecker#getTypeArguments
:
const typeArgs = typeChecker.getTypeArguments(arrayType as ts.TypeReference);
const elementType = typeArgs[0];
Чтобы проверить, является ли тип типом массива, я обычно просто проверяю имя символа типа для Array
и имеет ли он единственный аргумент типа.