什么是console.log?

console.log的用途是什么?

请用一个代码示例解释如何在JavaScript中使用它。

783657 次浏览

console.log与jQuery无关。

它将消息记录到调试控制台,例如Firebug。

console.log与jQuery无关。它是由调试器(包括Chrome调试器和Firebug)提供的一个通用对象/方法,允许脚本将数据(或大多数情况下的对象)记录到JavaScript控制台。

它不是jQuery特性,而是用于调试的特性。例如,当发生一些事情时,您可以将一些事情记录到控制台。例如:

$('#someButton').click(function() {
console.log('#someButton was clicked');
// do something
});

当你点击按钮时,你会在Firebug的“控制台”选项卡(或其他工具的控制台-例如Chrome的Web检查器)中看到#someButton was clicked

由于某些原因,控制台对象可能不可用。然后你可以检查它是否正确——这很有用,因为当你部署到生产环境时,你不必删除调试代码:

if (window.console && window.console.log) {
// console is available
}

它用来记录(你传递给它的任何东西)到Firebug控制台。主要用途是调试JavaScript代码。

使用console.log向页面添加调试信息。

许多人使用alert(hasNinjas)来实现这个目的,但是console.log(hasNinjas)更容易使用。使用警报弹出一个模态对话框,阻止用户界面。

编辑:我同意巴普蒂斯特Pernet1月汉č我č的观点,首先检查是否定义了window.console,这样如果没有可用的控制台,代码就不会中断。

jQuery没有什么可做的,如果你想使用它,我建议你去做

if (window.console) {
console.log("your message")
}

因此,当代码不可用时,您不会破坏代码。

正如注释中所建议的,你也可以在一个地方执行它,然后正常使用console.log

if (!window.console) { window.console = { log: function(){} }; }

console.log将调试信息记录到某些浏览器的控制台(安装了Firebug的Firefox, Chrome, IE8,任何安装了Firebug Lite的浏览器)。在Firefox上,它是一个非常强大的工具,允许您检查对象或HTML元素的布局或其他属性。它与jQuery无关,但在使用jQuery时,通常会做两件事:

  • 为Firebug安装 firerequery 扩展。除了其他优点外,这使得jQuery对象的日志记录看起来更好。

  • 创建一个更符合jQuery链接代码约定的包装器。

这通常是这样的意思:

$.fn.log = function() {
if (window.console && console.log) {
console.log(this);
}
return this;
}

你可以调用它,比如

$('foo.bar').find(':baz').log().hide();

轻松检查jQuery链内部。

你可以使用它在Firefox的FirebugWebKit浏览器的JavaScript控制台中调试JavaScript代码。

var variable;


console.log(variable);

它将显示变量的内容,即使它是一个数组或对象。

它类似于PHPprint_r($var);

如果使用Firebug等工具检查代码,则可以查看记录到控制台的任何消息。假设你这样做:

console.log('Testing console');

当您访问Firebug(或您决定使用的任何工具来检查代码)中的控制台时,您将看到您告诉函数要记录的任何消息。当您想要查看函数是否正在执行,或者变量是否被正确传递/赋值时,这特别有用。实际上,它对于找出代码中的错误是很有价值的。

它会发布一个日志消息到浏览器的javascript控制台,例如Firebug或开发者工具(Chrome / Safari),并将显示执行它的行和文件。

此外,当你输出一个jQuery对象时,它会在DOM中包含对该元素的引用,点击它就会在Elements/HTML选项卡中找到该元素。

您可以使用各种方法,但要注意,要在Firefox中工作,必须打开Firebug,否则整个页面将崩溃。无论你记录的是一个变量、数组、对象还是DOM元素,它都会给你一个完整的分解,包括对象的原型(总是有趣的)。你也可以根据需要包含尽可能多的参数,它们将被空格替换。

console.log(  myvar, "Logged!");
console.info( myvar, "Logged!");
console.warn( myvar, "Logged!");
console.debug(myvar, "Logged!");
console.error(myvar, "Logged!");

每个命令都显示不同的标识。

你也可以使用console.profile(profileName);来开始分析一个函数、脚本等。然后用console.profileEnd(profileName);结束它,它将显示在你的Chrome配置文件选项卡(不知道与FF)。

要获得完整的参考,请访问http://getfirebug.com/logging 我建议你读一读(跟踪,组,分析,对象检查)。

希望这能有所帮助!

console.log具体来说是一种方法,用于开发人员编写代码,以不引人注目地通知开发人员代码正在做什么。它可以用来提醒您存在问题,但在调试代码时不应该取代交互式调试器。它的异步性质意味着记录值不一定表示方法被调用时的值。

简而言之:用console.log记录错误(如果可用),然后使用你选择的调试器来修复错误:Firebug, WebKit开发工具(内置到Safari), IE开发工具或Visual Studio。

注意:在您的产品代码中保留对控制台的调用将导致您的站点在Internet Explorer中崩溃。永远不要打开包装。看:https://web.archive.org/web/20150908041020/blog.patspam.com/2009/the-curse-of-consolelog

当我开始调试console.log时,我真的觉得web编程很容易。

var i;

如果我想检查i运行时的值。

console.log(i);

你可以在firebug的console选项卡中检查i的当前值。它是专门用于调试。

举个例子——假设你想知道哪行代码可以运行你的程序(在它崩溃之前!),只需输入

console.log("You made it to line 26. But then something went very, very wrong.")

可以查看控制台的地方!把它们都放在一个答案里。

火狐

http://getfirebug.com/

(你现在也可以使用Firefox内置的开发工具Ctrl+Shift+J (tools > Web developer > Error Console),但Firebug要好得多;使用Firebug)

Safari和Chrome浏览器

基本一样。

https://developers.google.com/chrome-developer-tools/docs/overview

https://developer.apple.com/technologies/safari/developer-tools.html

Internet Explorer

别忘了你可以在IE9或IE10中使用兼容性模式来调试IE7和IE8

http://msdn.microsoft.com/en-us/library/ie/gg589507(v=vs.85).aspx

http://msdn.microsoft.com/en-us/library/dd565628(v=vs.85).aspx

如果你必须在IE7中访问IE6的控制台,请使用Firebug Lite书签

http://getfirebug.com/firebuglite/寻找稳定的书签

http://en.wikipedia.org/wiki/Bookmarklet

歌剧

http://www.opera.com/dragonfly/

iOS

适用于所有iphone, iPod touch和ipad。

http://developer.apple.com/library/ios/ipad/#DOCUMENTATION/AppleApplications/Reference/SafariWebContent/DebuggingSafarioniPhoneContent/DebuggingSafarioniPhoneContent.html

现在,在iOS 6中,你可以在OS X中通过Safari查看控制台,只要你插入你的设备。或者你也可以使用模拟器,简单地打开Safari浏览器窗口,然后转到“开发”选项卡。在那里,您可以找到让Safari检查器与您的设备通信的选项。

Windows Phone, Android

这两个都没有内置控制台,也没有书签功能。所以我们用 http://jsconsole.com/类型:听,它会给你一个脚本标签放在你的HTML。从那时起,你可以在jsconsole网站中查看你的控制台

iOS和Android

你也可以使用http://html.adobe.com/edge/inspect/来访问web检查工具和任何设备上的控制台,使用它们方便的浏览器插件。


旧的浏览器问题

最后,如果你使用console.log登录代码,而没有同时打开开发工具,旧版本的IE会崩溃。幸运的是,这很容易解决。在你的代码顶部使用下面的代码片段:

 if(!window.console){ window.console = {log: function(){} }; }

这将检查控制台是否存在,如果不存在,则将其设置为一个带有名为log的空白函数的对象。这边的窗户。console和window.console.log从来都不是真正的undefined.

有时令人困惑的一点是,要使用console.log记录一个文本消息和一个对象的内容,必须将这两个对象分别作为不同的参数传递。这意味着你必须用逗号分隔它们,因为如果你要使用+运算符来连接输出,这将隐式调用对象的.toString()方法。这在大多数情况下不会显式地覆盖,并且Object继承的默认实现不提供任何有用的信息。

在控制台尝试的例子:

>>> var myObj = {foo: 'bar'}
undefined
>>> console.log('myObj is: ', myObj);
myObj is: Object { foo= "bar"}

然而,如果你试图连接信息文本消息与对象的内容,你会得到:

>>> console.log('myObj is: ' + myObj);
myObj is: [object Object]

请记住,console。log实际上可以接受任意多的参数。

在早期,JS调试是通过alert()函数执行的——现在这是一种过时的做法。

console.log()是一个函数,它写一条消息来登录调试控制台,例如Webkit或Firebug。在浏览器中,你在屏幕上看不到任何东西。它将一条消息记录到调试控制台。它只在带有Firebug的Firefox和基于Webkit的浏览器(Chrome和Safari)中可用。它在所有IE版本中都不能很好地工作

控制台对象是DOM的扩展。

console.log()只能在开发和调试期间在代码中使用。

有人在生产服务器上的javascript文件中留下console.log()被认为是坏习惯。

除了上面提到的用法,console.log还可以打印到node.js中的终端。使用express(例如)创建的服务器可以使用console.log写入输出记录器文件。

如果您的浏览器支持调试,您可以使用console.log()方法来显示JavaScript值。

在浏览器中使用F12激活调试,并在调试器菜单中选择“Console”。

JavaScript中的控制台。尝试修复或“调试”一个不起作用的JavaScript程序,并练习使用console.log()命令。根据你所使用的浏览器,有一些快捷方式可以帮助你访问JavaScript控制台:

Chrome控制台键盘快捷键

Windows: Ctrl + 转变 + J
Mac: Cmd + 选项 + J

Firefox控制台键盘快捷键

Windows: Ctrl + 转变 + K
Mac: Cmd + 选项 + K

Internet Explorer控制台键盘快捷键

F12关键

Safari控制台键盘快捷键

__abc0 + __abc1 + __abc2

在java脚本中,没有输入和输出函数。因此使用console.log()方法来调试代码。它是一种日志记录方法。它将在控制台日志(开发工具)下打印。

在打开IE开发工具之前,它不会出现在IE8及以下版本。

这与jQuery无关。console.log()引用控制台对象的日志函数,该函数提供了将信息记录到浏览器控制台的方法。这些方法仅用于调试目的,不应依赖于将信息呈现给最终用户。

引用MDN文档在这里

console -包含许多你可以调用来执行的方法 基本的调试任务,通常集中在各种日志记录上

. Web控制台 到目前为止,最常用的方法是console.log,它被使用 记录特定变量中包含的当前值

如何使用Javascript?

let myString = 'Hello World';
console.log(myString);

还要记住,console是web浏览器中全局window对象的一部分。因此,以下内容在技术上也是正确的,但在实际场景中没有使用。

let myString = 'Hello World';
window.console.log(myString);

我试着用简单的方式解释:

为什么可用:

console.log()方法将一条消息写入控制台并显示它

~对于测试目的非常有用。

~在脚本标记下/内部使用它们。

怎么看:

=在按F12

语法:

Console.log(要显示的消息);

~接受一个参数并显示它。

使用Array:

var myArray = ["Ali", "John", "Shahrukh"];
console.log(myArray);

使用对象:

var myObject = { firstname : "Ali", lastname : "Rana" };
console.log(myObject);

使用文本:[方法1]:

console.log("Hello StackOverflow");

Working With Text:[method 2]

var str = "Hello StackOverflow";
console.log(str);

与数字打交道:

var myvar = '2';
console.log(myvar);

工作功能:

function myfunction() { return (5 * 19); }
console.log(function());

显示带有参数的消息:

var a = 2;
console.log("The value of a is " + a);

希望,也许会有所帮助。

console.log()是JavaScript中的一个函数,用于打印之前在其中定义的任何类型的变量,或者只是打印需要显示给用户的任何消息。

如代码:

function func() { return (5 * 18); }
console.log(func());

IMG:

enter image description here

输出:

enter image description here

console.log ():这个方法是众所周知的,也是最常见的,它可以输出任何类型的任何东西。传递字符串,数字,对象甚至html元素作为参数,它将为您打印相同的内容。

前女友。

console.log('Your print statements here!');
console.log('2nd parameter is type object', {type: 'object'});
console.log('can print with multiple parameters', 100001, {type: 'object'});

console

Console.log()用于开发人员记录输出信息。

您还有如下所示的其他控制台方法

console.assert ()

//如果第一个参数为假,记录消息和堆栈跟踪到控制台。

console.clear ()

//清除控制台。

console.count ()

//记录使用给定标签调用该行的次数。

console.countReset ()

//重置带有给定标签的计数器的值。

console.debug ()

//输出消息到控制台,日志级别为debug。

console.dir ()

//显示指定JavaScript对象属性的交互式列表。这个清单允许您使用公开三角形来检查子对象的内容。

console.dirxml ()

//如果可能,显示指定对象的XML/HTML元素表示;如果不可能,显示JavaScript对象视图。

console.error ()

//输出错误信息。您可以在此方法中使用字符串替换和附加参数。

console.exception ()

< p > / /非标准 // error()的别名

console.group ()

//创建一个新的内联组,将输出后面的所有内容缩进另一层。要后退一层,调用groupEnd()。

console.groupCollapsed ()

//创建一个新的内联组,将输出后面的所有内容缩进另一层。但是,与group()不同的是,它从内嵌组开始折叠,需要使用一个公开按钮来展开它。要后退一层,调用groupEnd()。

console.groupEnd ()

//退出当前内联组。

console.info ()

//信息记录。您可以在此方法中使用字符串替换和附加参数。

console.log ()

//日志信息的一般输出。您可以在此方法中使用字符串替换和附加参数。

console.profile ()

< p > / /非标准 //启动浏览器内置的分析器(例如,Firefox性能工具)。

.

.

.

console.profileEnd ()

< p > / /非标准 //停止分析器。您可以在浏览器的性能工具(例如,Firefox性能工具)中看到生成的概要文件

console.table ()

//将表格数据显示为表。

console.time ()

//使用指定的名称作为输入参数启动计时器。在给定的页面上可以同时运行多达10,000个计时器。

console.timeEnd ()

//停止指定的计时器,并以毫秒为单位记录从它启动以来经过的时间。

console.timeLog ()

//将指定定时器的值记录到控制台。

console.timeStamp ()

< p > / /非标准 //添加一个标记到浏览器的时间轴或瀑布工具

console.trace ()

//输出堆栈跟踪。

console.warn ()