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