草庐IT

实时日志

全部标签

javascript - 如何在不影响性能的情况下向函数添加详细的日志记录代码?

性能对于我正在编写的某个类很重要。我考虑过这样调用一个函数:debug('Thisisadebugmessage,onlyvisiblewhendebuggingison');内容应该是这样的functiondebug(message){if(DEBUG)console.log(message);}所以我想知道:如果DEBUG变量永远不会改变,这是否足以让V8将其标记为“死代码”?编辑:与浏览器相比,我更担心Node中的性能,因此在缩小时删除代码是不够的。Edit2:我根据建议的解决方案做了一个JSPerf基准测试,它们非常令人惊讶:http://jsperf.com/verbose-

javascript - Gulp Browserify 中的标准错误日志

有了这个任务:gulp.task("es6",function(){returnbrowserify({entries:'src/main/es6/main.js',extensions:['.js'],debug:true}).transform(babelify).bundle().pipe(source('superpos.js')).pipe(streamify(uglify())).pipe(gulp.dest('src/main/webapp'));});我得到这种错误日志:清晰漂亮,我喜欢。但是为了让我的watch继续运行,我需要处理错误而不是让它过去,比如....tra

javascript - 我可以使用 JavaScript 进行某种实时媒体解码吗?

我已经实现了一个MJPEG/AVI1解析器,它可以从MJPEG文件中提取JPEG格式的帧。我可以使用元素在DOM上绘制带有提取的JPEG文件的图像,我还可以使用context.getImageData从中导出图像像素数据。我可以制作某种视频流并实时附加那些提取的数据,以便用户可以立即播放吗?我知道我可以使用元素手动制作类似的UI,但我发现MediaSourceExtensions目前允许原生标签接收编码字节流格式。我很好奇我是否可以使用原始像素数据做到这一点。 最佳答案 这是一个有趣的想法。所以首先,您需要创建mp4初始化段。从那里

javascript - 将 Google 身份验证添加到 Firebase 实时数据库

我正在使用Firebase实时数据库,我需要为其添加用户身份验证。用户只能以提供商身份登录Google。当前数据库模式:{"rules":{".read":true,".write":true}}新的模式应该是这样的://Theserulesgrantaccesstoanodematchingtheauthenticated//user'sIDfromtheFirebaseauthtoken{"rules":{"users":{"$uid":{".read":"$uid===auth.uid",".write":"$uid===auth.uid"}}}}在我的案例中,我应该使用什么来进

javascript - 我的 JS 实时应用程序中的垃圾收集时间太长

所以我正在开发这个相当复杂的实时应用程序。我有一个音频引擎,每100毫秒触发一次大量的音频处理功能,以填充立即播放的缓冲区。如果这些音频功能运行得有点晚,即使运行一次,您也会听到声音断断续续。大部分时间一切正常。然而,当垃圾收集器被V8触发时,大约需要150ms才能完成一轮,从而触发上述裂缝。所以问题来了:我怎样才能缩短垃圾回收时间?几点说明:我们可以尝试分配更少的变量,让堆增长得更慢,但我想这不会解决问题:即使GC触发频率减半,我也看不出有任何理由让收集运行快点。我宁愿让它运行的频率加倍,持续时间减半。我读过一些关于V8GC的文章。我知道我无法直接控制GC。我知道它有一个短期过程和一

javascript - node.js中一个大的json日志文件分析

我有以下JSON文件:sensorlogs.json{"arr":[{"UTCTime":10000001,"s1":22,"s2":32,"s3":42,"s4":12},{"UTCTime":10000002,"s1":23,"s2":33,"s4":13},{"UTCTime":10000003,"s1":24,"s2":34,"s3":43,"s4":14},{"UTCTime":10000005,"s1":26,"s2":36,"s3":44,"s4":16},{"UTCTime":10000006,"s1":27,"s2":37,"s4":17},{"UTCTime":10

javascript - 如何查询和过滤 Firebase 实时数据库

这个问题在这里已经有了答案:QuerybasedonmultiplewhereclausesinFirebase(8个答案)关闭5年前。我想从数据库中获取名字和姓氏由用户输入给出的所有人。到目前为止,这是我的代码:admin.database().ref('persons').orderByChild('Firstname').equalTo(firstName).limitToLast(1).once("value").then(function(snapshot){}这段代码只过滤名字,但我找不到任何方法为姓氏添加另一个Where子句。我试图添加另一个orderBy,但它似乎不起作

javascript - 实时数据无限滚动

我正在尝试在Web应用程序中实现无限滚动,可以从服务器添加或删除记录,按其ID的字母顺序排序,相关数据也可以随时更改,我必须显示最新数据.我了解无限滚动的工作原理以及如何显示一组固定对象的最新数据(在我的例子中,反复轮询并将数据转储到View中),但我无法理解如何将两者集成。API使用游标,每次向我发送20条记录。请帮忙 最佳答案 我想我明白你最关心的是什么。具有实时更新的无限滚动很难实现。您必须仔细考虑并弄清楚您真正想要实现的目标。有几种情况需要考虑,为简化起见,假设我们使用带有行的网格:可见行已更改(编辑)在可见行之间添加了新行

javascript - C# Selenium 访问浏览器日志

有没有办法使用selenium在c#中捕获浏览器日志。我希望捕获出现在特定页面上的任何JS错误。最好在Chrome或Firefox上使用。我以前用Python完成过这个,但可以用C#完成吗? 最佳答案 使用Selenium/Chrome/C#设置和检索日志条目:ChromeOptionsoptions=newChromeOptions();options.SetLoggingPreference(LogType.Browser,LogLevel.Warning);vardriver=newChromeDriver(options);

javascript - Gulp 实时重载

我有一个用Node.js构建的网站。我可以通过从命令行运行nodeserver.js来成功启动和运行站点。然后,我通过在浏览器中访问“http://localhost:3000”来访问该站点。我现在正在尝试改进网站周围的一些构建过程。为此,我依赖Gulp。我想在HTML或CSS文件发生更改时自动重新加载网页。我偶然发现了gulp-livereload插件。我已经按照文档中的描述安装了它。但是,当我在浏览器中访问“http://localhost:35729/”时,我只看到以下内容:{minilr:"Welcome",version:"0.1.8"}我的gulp任务是这样配置的:gulp