typescript - 将变量用作函数时的编译器错误
问题描述
我正在尝试编译一些 Typescript,但出现编译器错误:
TypeError: myVariable is not a function
at Object.<anonymous> (/home/anon/Desktop/Typescript/main.js:37:1)
at Module._compile (internal/modules/cjs/loader.js:738:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:749:10)
at Module.load (internal/modules/cjs/loader.js:630:32)
at tryModuleLoad (internal/modules/cjs/loader.js:570:12)
at Function.Module._load (internal/modules/cjs/loader.js:562:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:801:12)
at internal/main/run_main_module.js:21:11
我确定这是因为 myVariable 确实不是函数,而是“any”类型。但是,如果我没记错的话,这种数据类型应该可以作为函数访问。
谢谢
let myVariable: any = 10;
console.log(myVariable.name);
console.log();
myVariable();
解决方案
当叙述者说 TypeScript 没有抛出任何错误时(在 23:30),他不是在谈论编译错误(来自运行 tsc 程序)。他指的是 TypeScript linter,它会在你编译之前检查你的代码在你的文本编辑器中是否存在问题。您会注意到 myVariable() 行下方没有红色的“曲线”。但是,当他将类型切换为未知时,会出现曲线。那些曲线就是他所说的错误——代码永远不会被运行。
推荐阅读
- php - 来自baseurl的codeigniter重定向
- r - 使用 dplyr 提取最小和最大日期
- python - Heroku 构建中的 Gunicorn SyntaxError
- python - 在 Python 中读取 csv 文件时如何删除分隔符?
- javascript - 如何将 http 请求响应存储在本地变量中并在我的任何文件中使用它?
- firebase - 问题在 Firebase Firestore 的文档中获取单个字段
- python - 熊猫数据框获取每行出现次数最多的值(Python2)
- javascript - 了解如何使 setState 在异步调用中工作
- c# - 在门户中运行 Azure Function 时出现内部服务器错误
- python - 从烧瓶的下拉菜单中传递选定的选项