javascript:console.log不在这种情况下工作?
问题描述:
(function($){ $.fn.openlayers = function(mapElementId, options) {
alert(console.log);
console.log(options);
...
}
});
我试着去在一个JavaScript库扩展功能,但令我吃惊的,当我开始我意识到什么也没有被console.log
记录..我知道正在执行的代码由于alert()
正常触发。但是,来自警报功能的返回响应似乎是"function(){}"
,这是正确的吗?或者实际上是console.log和空函数?javascript:console.log不在这种情况下工作?
因此,在这里发生了什么以及为什么console.log不工作的任何线索?
我想我可能找到了罪魁祸首。林用的OpenLayers JavaScript文件的工作,我可以看到他们的图书馆设置
OpenLayers.Console={log:function(){},...
然而,这是大写的控制台,但也许不会有所作为?我也必须在OpenLayers的范围内,我无法真正看到我的身影。所以我仍然有点困惑。但是,这将解释为什么我看到一个空函数
这是输出,我从哪里加载此错误发生后应用在Chrome的调试窗口中键入“控制台”获得。
assert: function(){}
count: function(){}
debug: function(){}
dir: function(){}
dirxml: function(){}
error: function(){}
group: function(){}
groupEnd: function(){}
info: function(){}
log: function(){}
profile: function(){}
profileEnd: function(){}
time: function(){}
timeEnd: function(){}
trace: function(){}
warn: function(){}
__proto__: Object
所以它似乎是什么,可能是openlayers JavaScript重写本地控制台。
答
只要点击ALL,你一定会看到console.log输出。
希望它可以帮助... !!!
难道你不在范围内达到'console'吗?你尝试过'window.console.log'吗? – 2012-03-05 09:16:26
'console.log'不是一个空的函数。你使用的是什么浏览器? – 2012-03-05 09:16:35
chrome和firefox都会在alert()响应中返回一个空函数。 window.console.log,返回相同的响应以及... – netbrain 2012-03-05 09:19:24