lao*_*ren 5 javascript node.js
我将数据发布到节点服务器:
{
"form_1": [{
"resultName": "",
"level": "",
"unitOrder": "",
"winner": "",
"winnerOrder": "",
"date": "1",
"score": ""
}],
"form_2": [{
"resultName": "",
"level": "",
"unitOrder": "",
"winner": "",
"winnerOrder": "",
"date": "1",
"score": ""
}],
"form_3": [{
"resultName": "",
"level": "",
"unitOrder": "",
"winner": "",
"winnerOrder": "",
"date": "1",
"score": ""
}]
}
Run Code Online (Sandbox Code Playgroud)
我尝试将console.log数据写入快递服务器:
console.log(req.body)
Run Code Online (Sandbox Code Playgroud)
但是出现错误:
TypeError:无法将对象转换为原始值
我不明白。那么如何获取数据呢?
Ehs*_*har 23
此错误背后的实际原因
当 Javascript 尝试将对象转换为字符串时。
JavaScript 将尝试调用toString()该对象的方法。大多数 Javascript 对象都有toString()从Object.prototype. 但其中一些有null prototype, 没有toString()方法,因此 Javascript 将无法将这些对象转换为字符串基元。和can't convert object to primitive error will rise。
要在 Javascript 中创建空原型对象,请使用此方法
let travel = Object.create(null);
Run Code Online (Sandbox Code Playgroud)
解决方案
travel = {...travel};
Run Code Online (Sandbox Code Playgroud)
console.log用于记录字符串或简单值
正如文档所说,您可以格式化输出,例如json console.log("body: %j", req.body)
或者更好的是,使用console.dir记录对象
| 归档时间: |
|
| 查看次数: |
15891 次 |
| 最近记录: |