- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
问题似乎与 WebStorm 本身有关,它似乎不想处理包含大量嵌套对象的对象。它也不想在“Watches”窗口中显示对象内容。这个问题有点奇怪,因为我能够检查字符串,它的加载速度非常快。似乎是 WebStorm 问题
<小时/>我有一个相对较大的 JSON 文件 4.9mb,需要在 NodeJS 中处理,该文件存储在文件系统中,并使用以下代码行加载:
var path = require('path');
var filename = path.join(__dirname, 'db_asci.json');
var fs = require('fs');
var content = fs.readFileSync(filename);
debugger;
var decycledObj = JSON.parse(content);
debugger;
问题是,在第一个 debugger;
断点被击中后,第二个断点没有被击中,我等了 20 多分钟,什么也没发生,一个处理器核心加载到 100%。我无法调试该函数,因为它是 native 的。
Here是 JSON 的 ASCI 版本
Here是UTF8版本的JSON
我做错了什么?
最佳答案
您遇到的问题是不是 JSON 解析花费的时间太长。事实上,试试这个:
var start = Date.now();
var obj = JSON.parse(fs.readFileSync(filename));
console.log('Took', Date.now() - start, 'ms');
您可能会发现花费了不到一秒左右的时间。
您遇到的问题是调试器本身的问题 - 观察者效应。观察系统的行为会改变该系统。
我假设您正在使用 Node 检查器。每当您有一个非常大、复杂的对象时,将该对象加载到检查器中的成本就非常昂贵。在此过程中,您的 Node 进程将固定 CPU 并且事件循环暂停。
我的猜测是 JSON 被解析并创建了一个巨大的(假设我们正在处理 5MB)对象。然后, Node 会调用第二个调试器,检查器需要加载本地变量。这个极其缓慢的过程开始了,检查器不会显示您已经到达断点,直到它完成。所以对你来说它看起来只是卡住的。
尝试用一些小文件替换您的 JSON 文件(例如 {a:1}
)。它应该可以快速加载。
您真的需要目视检查整个物体吗?有一些工具更适合查看 JSON 文件。
关于json - NodeJS JSON.parse(...) 需要很长时间才能完成(在 WebStorm 中的调试器下),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19747783/
我环顾四周,但我只找到了过去版本的答案。我有一个新版本的 WebStorm,我想从命令行打开我的项目,但是 wstorm . 和 webstorm . 似乎不起作用。 我试过去 工具 > 创建命令行启
是否可以调整 WebStorm,以便当我的终端窗口中有类似内容时,我只需单击文件名并跳转到它。 最佳答案 无法使用内置终端(请为 IDEA-118566 和 IDEA-154439 投票)。 Awes
有没有一种简单的方法来获得 WebStorm 的可移植(USB 内存棒)安装? 我在 'Net 上找到了一些关于如何为 PHPStorm 执行此操作的帖子(将 .exe 文件重命名为 .zip,解压并
我使用 Webstorm 来调试我的应用程序。设置断点效果很好,调试器将命中我的断点。如果我在 node_modules 内的脚本内设置断点,那么它就不再工作了。它应该与 WebStorm 有关,因为
在 Visual Studio 中,当我键入一些特殊字符(如 ;})时,它会自动格式化相关的代码段,但在 WS 中,什么也没有发生。我试图找到那个选项,但没有结果。 // e.g. In VS, if
我有一个实时模板 useS 用于 const [$VAR1$, set$VAR2$] = useState($END$); 其中 useState 是一个必须像这样导入的外部变量: import {
我想在特定文件夹中运行一些测试。 如果我右键单击该文件夹,我希望有一个“运行..”选项,以便能够运行这些测试。我依稀记得以前的 WebStorm 版本可以做到这一点。 如何在 WebStorm 中运行
我正在寻找一种将双引号(默认行为)更改为单引号的方法。我已经阅读了文档并尝试在线搜索,但正常的搜索方式似乎不起作用。 我已经修改了 package.json以各种方式,都没有奏效,这是我的最新尝试:
我的 webstorm ide 不会再在我现有的 Node.js 项目中的断点处停止。 当我创建一个新的 webstorm node.js express 项目并设置调试点时,它似乎工作正常。 例如,
我正在尝试让 WebStorm 在使用 Angular Material 时自动完成一些 HTML 属性值。 编辑器 > 检查 > HTML > 未知的 HTML 标签属性 我在这里添加了一些属性,如
我感兴趣的是,是否有一种方法可以表明应该在哪里开始写变量名 例如,如果我将此实时模板称为: console.log('$TEXT$', $TEXT$); ^ 它将从第一个TE
我想在 WebStorm 中禁用代码折叠。可以关闭折叠指示器,但折叠本身仍然有效。我想摆脱整个事情,所以不可能以任何方式激活它。这可能吗? (没有任何明显的选择,但我希望我错过了一些东西......)
我正在尝试 WebStorm 编辑器(目前使用 vim)。 我注意到我无法分辨行尾在哪里,因为您可以在代码编辑器中将光标移动到行尾之外。 我觉得这非常令人沮丧。我过去常常能够确定该行的结尾在 vi 中
我正在尝试在 webstorm 中更改我的项目名称。 我看过this在他们的开发者论坛上回答,但不适用于此版本(Webstorm 7)。更改 .idea/.name 的内容不会更改项目文件夹 View
我正在尝试 webstorm,自动完成下拉列表中的选项过于冗长 例如: 我怎样才能将其降低到可管理的水平?事实上,自动完成对 api 发现毫无用处。 最佳答案 尝试使用实际对象,最好是带有 JSDoc
有没有人遇到过 ESLint 没有在 WebStorm 中加载的问题?我正在尝试指定路径 /usr/local/bin/eslint , /usr/local/bin , 每次我收到这条消息: 或 n
WebStorm 中是否有设置允许滚动到最后一行,就像最新的 Visual Studio 允许的那样?我不喜欢在文件末尾保留 20 行新行,这样我就可以在屏幕中间工作。 最佳答案 设置 |编辑 |一般
我不小心创建了一个没有扩展名的文件,并且选择了错误的文件类型关联。我认为是文本文档。我将其重命名为具有 .js 扩展名,这正是我想要的,但现在它卡住了,没有任何语法突出显示。 WebStorm 不会将
我已申请this theme到 WebStorm,但我不喜欢它。 如何恢复到 WebStorm 的默认设置? 最佳答案 根据您使用的操作系统,您应该能够删除配置文件,WebStorm 将重新创建它。
在设置>代码样式> JavaScript中,我已将制表符大小和缩进设置为4。为什么WebStorm仍然忽略这些设置,正如您在预览窗口中看到的: 哪些设置可以覆盖这些设置? 最佳答案 如果您启用了 Ed
我是一名优秀的程序员,十分优秀!