node.js - 邮递员显示的结果与发送的 ExpressJS 不同
问题描述
嗯,这是一个不寻常的问题,我不确定我应该在哪里放置 stackoverflow 的哪个站点,所以如果有人能告诉我,我很乐意在那个站点提问。
问题
所以,我正在开发一个 ExpressJS 后端并在邮递员中进行测试。以下代码是我感兴趣的。
response.status(200);
result.message = "Please Fill Registration Details";
result.data = {
code: 010101
};
result.status = "Successful";
这是一个简单的代码,这里没有问题,但是当我签入邮递员时,输出是:
{
"message": "Please Fill Registration Details",
"data": {
"code": 4161
},
"status": "Successful"
}
代码 010101 是如何更改为 4161 的?
我一开始以为邮递员是在考虑 010101 是二进制的并将其转换为十进制,但十进制值为 21,十六进制数为 15。
那么,这是怎么回事呢?有谁之前经历过这个吗 ?我仍然需要在生产和实际设备中检查这个 API。我会更新我的发现。
解决方案
它认为010101
是一个八进制数,这就是 JavaScript 的工作原理。它认为它是八进制数的原因是它没有被引号包围。
下面是一个 JavaScript 示例:
console.log(010101); //4161
因此,要修复您的代码,请将您的值括在引号中:
result.data = {
code: "010101"
};
推荐阅读
- python - 如何使用fuzzywuzzy连接两个数据集
- node.js - Puppeteer 集群有时无法在 k8s 中启动
- arrays - 我在 Swift 'NSInvalidArgumentException' 中收到此错误
- kotlin - 按键列表分组 (Kotlin)
- sql - 存储要在存储过程中使用的标识值
- ios - 相对内存引用问题
- sapui5 - SAPUI5 Variant 键保存奇怪的行为
- makefile - 使用 automake 生成随环境变化的 Makefile 的规范方法
- sql - 获取 Oracle Sql 中链(树)中任何元素的最顶层元素
- css - 我想为每个奇数 p 元素设置样式,不包括隐藏的 p 元素