作者回复: 原则上不可以改变,允许 push 应该是一个TypeScript 的一个缺陷
作者回复: 应该是声明文件的问题,你的tsconfig.json中lib是如何配置的,最好贴出完整代码。
作者回复: let obj: object // 表示非原始类型(非string/boolean/number/symbol/null/undefined)
let obj: Object // TypeScript定义的标准JavaScript Object接口(按ctr可查看)
let obj: {} // 表示一个空对象类型
作者回复: 这种方式绕过了类型检查,算是一种hack,还是建议为object指定明确的属性和类型。
作者回复: myFruit是一个字面量联合类型,只能被直接赋值为字面量,不能被赋值为一个字符串类型的变量,因为变量的值可能会发生改变。去掉中间变量myString即可。
作者回复: 是的,但一般不这么写,可以定义一个接口,另外如果是对象字面量,直接赋值即可,不必指定类型。
作者回复: Mac自带功能,按住关闭按钮
作者回复: Q1:
https://blog.jetbrains.com/webstorm/2016/03/how-to-compile-typescript-in-webstorm/
Q2:
https://www.jetbrains.com/help/webstorm/typescript-support.html#typescript_parameter_inferred_type_information
个人没有用过Webstorm,Google一下即可 :)
作者回复: Prettier,TSLint