TypeScript黑魔法教学(2):开始练习体操
在学习 TS 黑魔法(类型体操),建议先把前面的 TS 基础知识学好了,再来看进阶用法。
另外,即使已经进阶到高级选手了:不要滥用工具类型,对外暴露的 API,应该尽量多手动标注函数返回值类型。契约高于实现,你写再多重复的TS代码也不会影响最终代码。
在学习 TS 黑魔法(类型体操),建议先把前面的 TS 基础知识学好了,再来看进阶用法。
另外,即使已经进阶到高级选手了:不要滥用工具类型,对外暴露的 API,应该尽量多手动标注函数返回值类型。契约高于实现,你写再多重复的TS代码也不会影响最终代码。
来自神光的《Nest 通关秘籍》
来自神光的《Nest 通关秘籍》
这里说的是不应该使用 if-else 的地方尽量不去写 if,而不是去掉所有的 if-else
1 | function func(arg) { |
有些时候不需要生命个变量,然后再赋值返回
1 | function func(arg) { |
1 | function func(arg) { |
1 | function func(arg1, arg2, arg3) { |
如果是这种复杂的条件,对象的形式就实现不了了,这没有办法了吗?
其实有个设计模式叫策略模式,先上个策略模式的代码:
1 | // js版: |
用法也很简单,比如上面的 if 示例:
1 | function func(arg1, arg2, arg3) { |
exeStrategyActions 函数会一个一个寻找条件是 true 的值,直到找到 true,然后执行传进去的回调函数,
一些工具类:
适合node:
一些cli工具:
记录一下简单使用SpringBoot的一些知识点
原文:How to process a CSV file five times faster in NodeJs with Rust and Napi rs
因为原文的文件目录和文件名比较随便,所以这里会修改一下。而且修改成适合win系统环境的代码,在ubuntu下也试过没任何问题。
在学习 TS 黑魔法(类型体操),建议先把前面的 TS 基础知识学好了,再来看进阶用法。
另外,即使已经进阶到高级选手了:不要滥用工具类型,对外暴露的 API,应该尽量多手动标注函数返回值类型。契约高于实现。
mitt 是一个非常小巧的库,在写 vue3 和微信小程序的时候也经常用到,这里先上转成 js 的代码: