ts project reference(tsconfig 配置相关)

reference

用于将项目内的ts按照文件夹分块,并能够互相引用,具体查看 @typescript/typescript-eslint
https://www.typescriptlang.org/docs/handbook/project-references.html
该功能允许将项目的各个部分定义为单独的TypeScript模块。 这允许对某些模块进行不同的配置,分别构建。

extends

https://www.typescriptlang.org/tsconfig#extends
ts extends 会继承所有上一个 配置文件的配置,但若在继承后再配置 include exclude,则会完全覆盖,也就是继承后,要么配置完整的 include 或 exclude,要么不配置。
继承是向上访问所有的,即如果用于继承的文件也有 extends: ‘某个相对路径’,就继续解析这个相对路径文件的内容。

tsc —clean

image.png
要能够成功clean,需要clean的outDir一定不能被 rootDir 包含

数字处理(或者叫js能够处理的极大值)

关于数字相关的解释:https://stackoverflow.com/questions/307179/what-is-javascripts-highest-integer-value-that-a-number-can-go-to-without-losin
JavaScript has two number types: Number and BigInt.
The most frequently-used number type, Number, is a 64-bit floating point IEEE 754 number.
The largest exact integral value of this type is Number.MAX_SAFE_INTEGER, which is:

  • 2-1, or
  • +/- 9,007,199,254,740,991, or
  • nine quadrillion seven trillion one hundred ninety-nine billion two hundred fifty-four million seven hundred forty thousand nine hundred ninety-one

“Safe” in this context refers to the ability to represent integers exactly and to correctly compare them.
相当于如果将一个数字交给js,只要小于等于 Max_SAFE_INTEGER 该数可以被精准处理,但大于这个数时,只能获得一个近似值。

获得一个数字 且该数字 是需要外部再使用的数字 应该将极值设置为:
Number.Max_SAFE_INTEGER
image.png
不可使用Infinity的原因是该值只可用于比较,不可再用于计算。
大概使用的话就是超过 16 位不可再输入,或大于 9,007,199,254,740,991 不可再输入