草庐IT

9.20Leetcode记录

全部标签

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

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

javascript - 检测并记录外部 JavaScript 或 CSS 资源无法加载的时间

我有多个对外部js和css资源的引用。大多数情况下,这些用于第三方分析等。有时(传闻)这些资源无法加载,通常会导致浏览器超时。是否可以在外部JavaScript或CSS资源加载失败时检测并登录服务器?我正在考虑某种类型的延迟加载机制,当失败时,将调用一个特殊的URL来记录此失败。有什么建议吗?我认为会发生什么:用户点击我们的页面,服务器端成功处理并提供页面在客户端,HTMLheader尝试连接到我们的第3方集成合作伙伴,通常通过以“http://www.someothercompany.com...”开头的javascript包含。其他公司无法处理我们的负载或正常运行时间很差,因此连接

javascript - 如何在 JSDoc 中记录字符串 double 组?

我似乎找不到这方面的例子。但是我有一个字符串double组(表格单元格数据),我想在我的JSDoc中记录它。编译器似乎不喜欢这样:/***@param{cells:[[String]]}tableData*/对此并没有什么特别好说的:/***@param{cells:String[][]}tableData*/ 最佳答案 这个怎么样:/***@param{Object>}tableData*/引用:http://wiki.servoy.com/display/public/DOCS/Annotating+JavaScript+usi

javascript - d3.scale.category20 对我来说太聪明了

任何人都可以向我解释为什么这两个表达式返回不同的值...log1.text(c20(1));//"#aec7e8"log2.text(d3.scale.category20()(1));//"#1f77b4"...在以下上下文中工作示例...varc20=d3.scale.category20(),col=d3.range(20).map(function(c){returnc20(c).replace("#","0x")}),log1=d3.select("#log1"),log2=d3.select("#log2");log1.text(c20(1));//"#aec7e8"log

javascript - 如何将 "20hc+2a+2hc+9op"之类的字符串表达式减少到 "22hc+2a+9op"

如何在字符串中查找数字后的字母并将其配对以减少一个表达式?假设我们有一个像string="20hc+2a+2hc+9op+330o+10op"这样的字符串,我们想找到数字后面字母相同的对。首先我们应该做split.('+')然后我们得到一个数组[....],然后我们需要在数字后面对每个字母进行配对,以得到类似下面的东西:(20hc+2hc)(2a)(9op+10op)(330o)最后,我们需要对匹配对的数字求和:20+2=22hc2=2a9+10=19op330=330o获得最终结果:22hc+2a+19op+330o那么,我该如何解决这个问题,只要数字后面的字母相同,它们是否未排序也

javascript - 如何记录具有已知参数类型的可变长度的参数列表?

相关:Correctwaytodocumentopen-endedargumentfunctionsinJSDoc我有一个函数,它通过访问arguments变量接受多个数组:/***@paramoptionsAnobjectcontainingoptions*@param[options.bind]blablabla(optional)*/functionmodify_function(options){for(vari=1;i现在,我知道除了options之外的每个参数都是一个包含值得记录的值的数组:[search_term,replacement,options]我不考虑将(冗长的

javascript - expectHEAD 已记录但未实现?

在我们内部的angularjs项目中,其中一项服务有$http.head()我正在尝试测试的调用。为了测试,我使用了FakeHTTPbackend由angular-mocks提供。相关代码如下:it('handlestatuscode200',inject(function($httpBackend,ConnectionService){spyOn(Math,'random').andReturn(0.1234);httpBackend=$httpBackend;httpBackend.expectHEAD('ping?rand=1234').respond(200);Connecti

javascript - 历史记录 replaceState 不再在 Chrome 中用于本地文件

我正在使用window.history.replaceState()更改使用file:///C:/...访问的HTML文件的查询字符串这曾经在Chrome、InternetExplorer和FireFox中有效,但在Chrome中不再有效。不确定它何时停止工作。我有Chrome45.0.2454.85。它仍然适用于其他2个浏览器。我得到:UncaughtSecurityError:Failedtoexecute'replaceState'on'History':AhistorystateobjectwithURL'file:///C:/Users/Michael/Desktop/tes

javascript - 如何记录方法的 "object"参数

我正在尝试使用YUIDoc为JavaScript方法编写一些文档。看起来像:/**ReturnsaninstanceofclassName@methodgetInstance@param{string}classNametheoftheclassusedtocreatetheinstance@param{Object}optionstheseareoptionsusedtocreatetheinstance**/functiongetInstance(className,options){.....}现在,选项对象可以有多个参数,如options.id、options.single等。

javascript - winston :尝试在没有传输的情况下写入日志 - 使用默认记录器

我按照教程在我的Express应用程序中设置了winston(2.x)默认记录器。更新到当前版本的winston(3.0.0)时,我在添加传输时遇到问题。我关注了latestdocs但我仍然在控制台中收到通知,并且根本没有创建任何日志文件:[winston]Attempttowritelogswithnotransportslogging.jsconstwinston=require('winston');module.exports=function(){constfiles=newwinston.transports.File({filename:'logfile.log'});c