javascript - 如何在 Javascript 中对不安全的整数进行单元测试?
问题描述
这是打字稿。
我有一个函数(实际上是角管道)将天数转换为字符串,如“1 天”或“2 天”取决于输入。
transform(day: number): string {
const result = /* here's a logic */;
return result; // outputs smthg like '1 day' or '5 days'
}
我为它编写单元测试,当我编写像 12312512135351513 这样的超大数字时它们没有通过。
我建议它是关于安全整数限制的,我的输入会溢出它。
所以问题是:如何测试接收这种不安全整数输入的函数? 他们的输出是出乎意料的。
避免不安全的数字是一种解决方案,但它是一个好的解决方案吗?另一种是获取数字作为字符串,切掉最后一位并使用它,但是函数的API看起来会很奇怪。
解决方案
const testUpper = (num) => Number.MAX_SAFE_INTEGER > num
javascript 中对 js 中非常长的数字的基本测试。希望这可以帮助
推荐阅读
- arrays - 如何反序列化 Json 数组以列出(或)数组
- macos - 由于无法在 macOS Catalina 中验证开发者,Flipper 无法打开
- php - PHP自定义博客系统,为每个用户复制消息
- java - Tflite 模型在 Android(ml vision)和 Python 中给出不同的输出
- javascript - 在 javascript 会话中存储值并在需要时访问它
- yii2 - Yii2如何在索引页添加输入字段
- javascript - 无法使用 Link 控制台记录道具
- angular - 如何检查使用本机元素的 Angular 测试是否导致错误
- angular - 电子邮件值作为 NULL 传递
- python - 执行 Pandas Goupby 和百分比增加/减少