javascript - 如果语句在使用 javascript 或 jsx 时不起作用
问题描述
让代码块登录到控制台时遇到问题
不工作。没有任何内容记录到控制台
var data = {"_id": "615fc3db8b6a6311aa3295ca", "isComplete": false, "remindTime": {"date": "2021-10-08", "time": "12:08:40 am"}, "subtitle": "Fdfdff", "title": "Dfdf"}
if (data.length > 0) {
console.log('my data', data);
}
什么工作:
var data = {"_id": "615fc3db8b6a6311aa3295ca", "isComplete": false, "remindTime": {"date": "2021-10-08", "time": "12:08:40 am"}, "subtitle": "Fdfdff", "title": "Dfdf"}
if (data.title) {
console.log('my data', data);
}
不知道出了什么问题
解决方案
您正在测试未明确放置长度属性的普通 js 对象上的长度属性。
测试长度似乎您期望它是一个数组。
这类似于在控制台中运行它,你会得到未定义的。
({}).length
如果你想记录它,如果它是一个对象:
if (data) {
console.log('my data', data);
}
如果你想记录它,如果它有任何属性:
if (Object.keys(data).length) {
console.log('my data', data);
}
推荐阅读
- c++ - 我的代码在标准输入中显示 4(Coreect),在 USACO 分级机中显示 5645,在 scanf/printf 中显示 1862013874。问题是什么?
- python - 我试图制作一个乘法表
- python - 使用 JayDeBeApi 存储 MySQL 二进制文件(16)
- c++ - 如何区分ascii值和数字?
- angular - 我收到 ERROR TypeError: Cannot read properties of undefined (reading 'filter')" 错误
- docker - 有什么方法可以在 dockerfile 中使用绑定挂载,或者必须使用 compose-file.yml
- javascript - 如何在点击反应时切换 tabPane 内容
- c - 如何使用 fread() 检测文件的结尾,然后在读取二进制文件时完成循环?(不要使用feof)——C语言
- docker - 无法使用机器人框架打开 chrome://webrtc-internals,页面显示为空白
- python - 在 Pandas 中将小数值转换为小数