Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript日志()与document.write()-使用哪一种?_Javascript_Logging_Document.write - Fatal编程技术网

javascript日志()与document.write()-使用哪一种?

javascript日志()与document.write()-使用哪一种?,javascript,logging,document.write,Javascript,Logging,Document.write,我正在使用Remy Sharp的twitterlib:,在示例文件中,他使用log(//stuff)输出到屏幕。我以前只遇到document.write()来填充这个容量,并且只看到log()与控制台日志一起使用。下面是代码片段(请看第4行和第6行): var计数=0,极限=2; timeline('rem',{limit:5},函数(tweets){ 计数++; 日志(“在点击“+count+””中请求的推文); 对于(var i=0;i

我正在使用Remy Sharp的twitterlib:,在示例文件中,他使用log(//stuff)输出到屏幕。我以前只遇到document.write()来填充这个容量,并且只看到log()与控制台日志一起使用。下面是代码片段(请看第4行和第6行):

var计数=0,极限=2;
timeline('rem',{limit:5},函数(tweets){
计数++;
日志(“在点击“+count+””中请求的推文);
对于(var i=0;i
我找不到关于log()作为输出到屏幕的独立javascript方法的任何信息,因此我想知道继续使用它是否是一个好主意,或者我是否应该以另一种方式(例如document.write()或jQuery DOM操纵)写入屏幕以获得更可预测的结果


有什么信息吗?

如果您查看该代码的正上方,您会发现log的函数定义:

function log(s) {
    document.getElementById('debug').innerHTML += '<p>' + s + '</p>';
}
功能日志{
document.getElementById('debug').innerHTML+=''+s+'

'; }

由于Paul Irish在html5bootstrap中将其作为console.log的包装器包含在内,所以您经常在野外看到日志;但在这些情况下,它打印到控制台,而不是窗口。通常,您应该避免使用document.write,而是使用上述异步友好方法。请参见Douglas Crockford在此处的解释:。

检查:
log
本身不是一个本机JavaScript函数。也许你是指这里的其他人所说的。我总是建议不要使用,因为它会导致竞争条件,如果
文档需要它在内部调用open
,它会清空你的页面。huwiler在下面的帖子中回答了这个问题:调用实际上不是一个本地js方法,而是一个定义的函数,我在浏览示例代码时完全忽略了它。噢。真不敢相信我错过了。突然之间,一切都变得有意义了。干杯
function log(s) {
    document.getElementById('debug').innerHTML += '<p>' + s + '</p>';
}