V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  CodeCodeStudy  ›  全部回复第 4 页 / 共 49 页
回复总数  974
1  2  3  4  5  6  7  8  9  10 ... 49  
@CLMan #43 Invalid Date 算是一个设计失误了,如果 new Date()的参数不正确,应该是抛出异常或者返回 null 的,而不是一个 Date 对象,调用方还要判断 Date 对象的有效性。
@DOLLOR #42 然而实践当中,java 很少遇到 double 是 NaN 的情况,如果需要表示没有值的话,用 Double x = null; 来表示即可。
只有 Math 跟数学计算有关的,才会得到 NaN 吧,如果是其他的,如果是参数不正确,通常会抛出异常,而不是返回 NaN 。
js 的坑更多,就算用 ts 也没办法完全规避,比如:

一个 number ,有可能是 NaN ,需要用 Number.isNaN 来判断

一个 Date 对象,比如变量名叫 d ,有可能是无效的,通过 d.toString() === 'Invalid Date' 或者 Number.isNaN(d.getTime())

这两个坑无法使用 ts 检测出来,因为 NaN 的数据类型也是一个 number ,Invalid Date 的数据类型也是 Date
ts 毕竟只是在 js 的基础上加上类型检查,编译后还是 js ,所以有些 js 的坑是无法检查出来的,比如

一个 number ,有可能是 NaN ,需要用 Number.isNaN 来判断

一个 Date 对象,比如变量名叫 d ,有可能是无效的,通过 d.toString() === 'Invalid Date' 或者 Number.isNaN(d.getTime())

这两个坑无法使用 ts 检测出来,因为 NaN 的数据类型也是一个 number ,Invalid Date 的数据类型也是 Date
6.10.1.0 比较好用,官网上还有下载,从 7 之后就改成了 electron 了。不过呢,你现在用了 8 的话,就不要换回 6 了,新版的新创建的格式会不一样,在 6 那里是显示不出来的
140 天前
回复了 shanyang88 创建的主题 互联网 国内电信运营商会保留哪些用户日志?
@baobao1270 #2 SNI 可以规避掉

Chrome 请开启此实验性选项:chrome://flags/#encrypted-client-hello (注:Chrome 117 + 默认启用)

Firefox 请开启此实验性选项:about:config 开启 network.dns.echconfig.enabled
firefox 118 以上支持,默认开启
148 天前
回复了 frencis107 创建的主题 信息安全 OpenSSH 爆高危漏洞 CVE-2024-6387
centos 和 open euler 的才 7 点几
写 any 还不如不写,让 ts 自己推断。
ts 有一点不好,他只是编译成 js ,无法在运行时起作用。
在有公网 IP 的服务器安装 frp ,然后内网穿透,你的 mac mini 就变成高性能服务器
你这县城挺牛的啊,是哪里的
你电脑什么配置啊?编译用了多长时间?
葵花宝典就不要了,就算练成神功,鸡鸡都没了,又有什么用呢?
163 天前
回复了 zy445566 创建的主题 Node.js 小记 Node.js 关于文件描述符的坑
像 java 的 try 或 python 的 with 就能有效避免这类问题
“跟我一家三口在一起”,你没当你爸是一家人?
1  2  3  4  5  6  7  8  9  10 ... 49  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6037 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 121ms · UTC 02:11 · PVG 10:11 · LAX 18:11 · JFK 21:11
Developed with CodeLauncher
♥ Do have faith in what you're doing.