TypeScript 支持与 JavaScript 几乎相同的数据类型,同时还提供了枚举类型
NexT&第三方服务
文章阅读数量记录
关于文章阅读数量,可以使用LeanCloud,还有Google的,或者是不蒜子统计
这里选用的LeanCloud,可以看doublemine这篇文章
时间:2020年4月5日
如果LeanCloud的服务长时间不用,会被停掉并且归档,所以还是需要时不时上去看看~
从排序数组中删除重复项
题目地址
题目地址:https://leetcode.com/problems/remove-duplicates-from-sorted-array/
思路
- 数组下标
- 快慢指针
使用快慢指针来记录遍历的坐标。
- 开始时这两个指针都指向第一个数字
- 如果两个指针指的数字相同,则快指针向前走一步
- 如果不同,则两个指针都向前走一步(之后将慢指针所在的节点值换成快指针所指位置)
- 当快指针走完整个数组后,慢指针当前的坐标加1就是数组中不同数字的个数
Go 程序的基本结构和要素
内置关键字
均为小写,关键字不能作为标识符使用
| break | default | func | interface | select |
|---|---|---|---|---|
| case | defer | go | map | struct |
| chan | else | goto | package | switch |
| const | fallthrough | if | range | type |
| continue | for | import | return | var |
【译】Flutter中的Bottom sheets
作者: Joe Birch
原文地址:https://flutterdoc.com/bottom-sheets-in-flutter-ec05c90453e7

Bottom sheets(底部菜单或底部页面)是(移动设备)屏幕底部展示内容给用户的视图(widget) — 这样或许可以促进与用户进一步的交互或展示其他内容的一些形式。通常固定在屏幕的底部,并方便用户隐藏。在Flutter中,有2种开箱即用(声明式)的bottom sheet widget,分别是 Persistent Bottom Sheet 和 Modal Bottom Sheet — 那么我们来看下这些widget是如何运行,同时在我们的apps中如何去使用它们。
JavaScript浮点计算
0.30000000000000004
在前端进行业务的计算时,出现了一点错误:
1 | var a = 0.1 ; |
很奇怪,为什么不直接等于0.3
JavaScript中的数字
数值始终是64位的双精度浮点数,0到51存储数字(片段),52 到 62 存储指数,63 位存储符号。
| 值(aka Fraction/Mantissa) | 指数 | 符号 |
|---|---|---|
| 52 bits(0 - 51) | 11 bits (52 - 62) | 1 bit (63) |
整数会被精确到15位、小数最大数是17位。
对于小数的二进制
系统是将10进制转为二进制再进行计算,0.1的二进制是0001100110...,后面就一直重复0011,0.2的二进制是0011..,也是重复0011。两个二进制再相加,再转为十进制就是0.30000000000000004。
解决方法
1、 先乘后除,缺点是 相乘的结果已经超过了 MAX_SAFE_INTEGER 会出现错误
1 | var x = (0.2 * 10 + 0.1 * 10) / 10; |
2、指定精度的四舍五入,小数太多,也不是很理想
1 | var a = 0.1 ; |
3、将浮点数转字符串,再模拟实际计算
