Я работаю над функцией для проверки параметров функции во встроенном непредвиденном JavaScript в потоке ввода для системы TypeScript, что-то вроде шаблонного двигателя.const javaScriptType = (untyped: unknown) => typeof untyped;
type JavaScriptType = ReturnType;
Так что javascripttype в конечном итоге:
type JavaScriptType = "string" | "number"
| "bigint" | "boolean" | "symbol"
| "undefined" | "object" | "function";
Но, используя мой метод, я в конечном итоге получаю «бесполезную» функцию javascripttype , которая существует только для того, чтобы я использовал returntype , чтобы получить результаты, которые я хочу.
есть ли я проще, что я могу сделать это просто, просто что -то, что можно было бы сложно, было просто, что я могу просто сделать это. Ожидаемые значения ... это не похоже на то, что оператор javaScript собирается измениться в ближайшее время ... но, как-то ощущают жесткие значения.const failedTypes = (
parameters: Array, allowedTypes: Array
): => {
const failed: Array = [];
for (const [index, parameter] of parameters.entries()) {
const typeOf = typeof parameter;
if (!allowedTypes.includes(typeOf)) {
failed.push(`${index}: ${typeOf}`);
}
}
return failed;
};
Подробнее здесь: https://stackoverflow.com/questions/794 ... urn-values