Node.js v14.17.0运行TypeScript类属性代码报Unexpected identifier错误
错误原因
你写的代码属于TypeScript语法,其中: string、: string[]、: any都是TypeScript独有的类型标注,不属于原生JavaScript的语法规范。Node.js默认只能解析运行标准JavaScript代码,无法识别类型标注语法,因此解析到name:后的string标识符时就会抛出语法错误。
解决方法
根据你的开发需求可以选择两种方案:
场景1:需要使用TypeScript开发
- 全局安装TypeScript编译器:
npm install -g typescript - 将代码文件的后缀名改为
.ts - 执行编译命令将TypeScript转换为JavaScript:
tsc 你的文件名称.ts - 运行编译后生成的JS文件即可:
node 你的文件名称.js
如果不想手动编译,可以直接用ts-node工具运行TS文件:
- 全局安装ts-node:
npm install -g ts-node - 直接运行TS文件:
ts-node 你的文件名称.ts
场景2:仅需要编写原生JavaScript代码
直接删除代码中所有的类型标注即可,修改后的标准JS代码如下:
class ClassData { name; interfaces = []; superclass; members = {}; }
修改后直接用node命令运行即可正常执行。
内容的提问来源于stack exchange,提问作者sab
相关产品推荐
相关产品推荐

