arrays - 数组有元素但长度为 0
问题描述
我使用一个包含单独数组并在其中推送对象的数组。
我的推动看起来像:
this.storeFilesService.base64files.filetype1.push({name: file.name, base64: str});
将对象推入子数组后,我将数组记录到控制台。控制台日志
(this.storeFilesService.base64files.filetype1);
控制台输出为:
[]
|-> 0: {name: "filename.pdf", base64: "JVBERi"}
但是当我将数组的长度记录到控制台时,输出为 0。
console.log(this.storeFilesService.base64files.filytype1.length); -> 0
我正在尝试检查子数组是否包含对象,但我的 if 子句似乎失败了,原因是长度。
oboce 代码设置在角度 onInit / 构造函数方法中。在此之前,我在 onDestroy 方法的最后一个组件中执行异步承诺。我认为当我到达上面的代码时,所有的承诺都应该得到解决。
为什么会出现这种行为?
更新:尝试了 JSON 控制台日志
console.log('Array : ', this.storeFilesService.base64files.filytype1, JSON.stringify(this.storeFilesService.base64files.filytype1));
JSON -> [] Object -> 同上,包含对象。
这怎么可能?
解决方案
似乎与chrome的实时控制台有关。该值已由控制台中的 chrome 更新,即使它已被打印。
推荐阅读
- microsoft-graph-api - MSGraphContact 分配类别有效但不可见
- python - 使用 mmap 写入内存
- wpf - How to Bind ComboBox Inside ItemsControl with Caliburn.Micro?
- c++ - 为什么一个标志在命令行上使用 cmake 工作,但不在 CMakeLists 文件中的 if(MSVC) 语句中?
- angular - 如何在 Angular 中动态嵌入来自 Cloudinary 的第三方 javascript 小部件?
- wso2 - 尝试将外部 jar 导入芭蕾舞演员模块时出错
- python - 如果我将 db 连接存储在 flask.g 对象上,如何让 Flask 连接到我的测试数据库?
- javascript - D3.js 折线图未显示在屏幕上
- php - 如何显示来自特殊父类别孩子的相关 wordpress 帖子?
- sql-server - SQL Server 值的减法循环