运行在命令行

.ts 文件的第一行添加这句可以在命令行运行 .ts 文件:

#!/usr/bin/env ts-no

运行以下会出错,原因出在第二行:

#!/usr/bin/env ts-node
console.log(process.argv);

解决办法:

npm i @types/node

成功与失败

在 node.js 中:

process.exit(0); // 表示成功
process.exit(1); // 0以及以上的数字表示失败

一个小问题

ts 中可以直接使用 isNaN()parseInt() 等。

不能直接使用 Number.isNan() 因为语法比较新。

解决方法:

新建 tsconfig.json

{
  "compilerOptions": {
    "lib": ["es2015"]
  }
}

重复声明变量或常量

同一个项目里的不同的 .ts 之间不能声明同一个变量或常量

解决办法:

把变量或常量 export

const a: number = parseInt(process.argv[2]);
const b: number = parseInt(process.argv[3]);

或者:

export { a, b };

可选参数

在 TypeScript 的函数中,在参数名后加上 ? ,这个参数就是可选参数,可以搭配 || 使用。

function print(n?) {
  n = n || "请输入";
  console.log(n);
}