jjzjj

compiler_log_formatter

全部标签

javascript - 为什么在 Firefox 中 Function.prototype.func=... 不影响 console.log?

我已经使用Function.prototype.func=...添加了一个函数到Function但在Firefox中它没有被添加console.log:Function.prototype.func=function(){returnthis.toString();};alert(typeofconsole.log.func);//inFF:undefined,inChrome:function这是错误还是有任何原因? 最佳答案 在Firefox中很明显:varfoo=function(){}foo.__proto__==Funct

javascript - 我们可以使用 Google Closure Compiler 从完整的 .js 文件创建 externs 吗?

我想知道是否需要手动编写Google闭包编译器的外部文件。我还没有看到任何关于从我的.js文件生成这些文件的可能性。手动创建所有外部变量是一项相当大的工作,而且它也很容易出错(即错误的参数定义,因为它随时间变化......)所以我想知道是否有用于该目的的Linux工具(命令行)。如果没有,是否有办法将.js与外部文件进行比较,这样我至少可以确保它们同步。? 最佳答案 http://www.dotnetwise.com/Code/Externs/旨在做到这一点,但我自己没有使用过它,所以我不确定它的效果如何。我们有一个关于dothis

javascript - IE 11 - console.log 显示对象属性未定义

这是一个非常简短的示例。我将下面的代码复制并粘贴到一个文件中,保存并打开它。在Chrome中工作正常,在ie11中失败。控制台上的输出是胡说八道!这是怎么回事?是否偶然发现了一些奇怪的错误?test.b显然不是未定义的,因为它可以通过JSON解析器和直接对象评估访问。此外,切换日志函数中变量的顺序不会改变未定义的test.b。wtfvartest={a:1,b:{c:1}}console.log(test,JSON.stringify(test),test.b);WTFIE 最佳答案 我最近也遇到了这个问题。问题是我正在处理的页面将

javascript - PIXI.js 的 Closure Compiler EXTERNS - 自定义对象参数注释

我正在为pixijs库准备externs文件以与闭包编译器一起使用。到目前为止,我遇到的唯一问题是自定义对象参数。这是一个简短的例子:pixi.js来源:/***Setthestyleofthetext**@param[style]{object}Thestyleparameters*@param[style.font='bold20ptArial']{string}Thestyleandsizeofthefont*@param[style.fill='black']{string|number}Acanvasfillstylethatwillbeusedonthetexteg'red

JavaScript 面向对象 : Implementation of Logging

我写了下面的代码,通过OOP在一个单独的js文件logger.js中实现日志记录。varconsole;functionLogger(){init();}varinit=function(){if(!window.console){console={log:function(message){},info:function(message){},warn:function(message){},error:function(message){}};}else{console=window.console;}};Logger.prototype.log=function(message)

javascript - Console.log 在使用 grunt 服务器的 Qunit 测试中不起作用

我正在创建在grunt服务器上运行的Qunit测试。在测试中,当我尝试使用“console.log”将一些输出记录到控制台时,它不会在控制台中打印任何内容。目前我只能使用OK来执行断言。请提供您的意见。 最佳答案 如果您在grunt中使用qunit任务,则需要使用--debug(即grunttest--debug)启动任务。然后,您将看到幻影日志以下列格式打印出您的控制台日志:[D]["phantomjs","console","MIXPANELPEOPLEREQUEST(QUEUED,PENDINGIDENTIFY):"]Seed

javascript - 使用 Closure-Compiler 类型检查数组内容

在GoogleClosure中,如果初始化一个特定的Array的@type{Array.},我能确定GoogleClosure会确认数组内容吗?这是一个小测试用例。在我看来,{Array.}正在偷偷通过{Array.}检查,尽管{string}被相同的检查正确阻止。我对GC有点陌生,这是我的错误吗?我已将其粘贴到GoogleClosureService,并且我只显示了两个预期错误之一(2013年9月12日)。我已经在我的本地jar文件(最新的v20130823)上用ADVANCED_OPTIMIZATIONS和warning_levelVERBOSE对这个进行了双重测试。它看起来仍然像

javascript - 当前包装 console.log() 以保留行号的最佳方法是什么?

我以前根据其他SO答案使用过以下内容(没有真正理解prototype.apply.apply的必要性(或工作原理)varmylogger={log:function(){if(window.console){if(window.console.log){Function.prototype.apply.apply(console.log,[console,arguments]);}}},...};虽然这可以防止IE自行崩溃,但它也会使行号报告不可用(它总是报告apply.apply..行。我玩了一会儿,发现以下内容似乎完全符合我的需要,即防止IE自行崩溃并报告mylogger.log(

console.log 中的 JavaScript 对象输出

我想知道打印对象时console.log从哪里得到构造函数的名字。另外,这实际上对代码有什么影响吗?functionF(){this.test='ok';}varf=newF();console.log(f);console.log(在Chrome中)的输出是:F{测试:“确定”}console.log从哪里得到F{test...中的F?如果我将F.constructor、F.prototype和f.constructor更改为随机值,它仍会打印原始的F:functionG(){this.fail='bad';}functionF(){this.test='ok';}F.prototy

javascript - Angular : Selectively compile templates

我知道ng-non-bindable允许给定元素及其子元素不被编译为模板。它似乎被设计为根据需要在整个模板中穿插。有没有办法告诉Angular不要处理给定的元素,而是在其中“戳洞”并允许处理选定的子元素?例如,我很想能够做这样的事情:{{2+2}}{{2+2}}并让它输出:{{2+2}}4我知道ng-non-bindable甚至不允许处理ng-bindable,即使它存在。但是,是否存在允许像我所表达的那样处理模板的方法?更彻底地说,我理想的解决方案是在找到ng-bindable之前不会处理任何Angular,而不仅仅是大括号表达式。例如:{{n+2}}{{n+2}}会导致:{{n+2