Sự khác biệt giữa console.log () và console.debug ()?


143

Google không hữu ích cho tôi, vì việc tìm kiếm "console.debug" chỉ xuất hiện một loạt các trang có dòng chữ "console" và "debug" trên chúng.

Tôi đang tự hỏi sự khác biệt giữa console.log()console.debug(). Có cách nào để sử dụng một loạt các console.debug()câu lệnh và sau đó chỉ cần lật một công tắc để dễ dàng tắt tất cả các câu lệnh gỡ lỗi khỏi việc gửi đến bàn điều khiển (như sau khi khởi chạy một trang web) không?


Dưới đây là làm thế nào để vô hiệu hóa các kết quả đầu ra console.log stackoverflow.com/questions/1215392/...
frazras

Bạn có thể đặt màu sắc. console.log ('% c Văn bản mẫu', 'màu: xanh;'); Hoặc thêm một số VAR trong văn bản bằng cách sử dụng: console.log (`Mẫu $ {biến}`, 'color: green;');
Gilberto B. Terra Jr.

Câu trả lời:


74

Đối với ít nhất các bảng điều khiển IE, Firefox và Chrome, .debug () chỉ là bí danh cho .log () được thêm vào để cải thiện khả năng tương thích

https://developer.mozilla.org/en-US/docs/Web/API/console

https://developers.google.com/chrom-developer-tools/docs/console-api#consoledebugobject_object

https://msdn.microsoft.com/en-us/l Library /ie / hh772183 (v = vs85) .aspx


55
Trong Chrome debug()xuất hiện màu xanh lam và log()màu đen
Simon_Weaver

38
Một cải tiến nghiêm trọng trên log ().
Vael Victus

32
Từ developer.mozilla.org/en-US/docs/Web/API/console : console.debug () - Lưu ý: Bắt đầu với Chromium 58 phương thức này chỉ xuất hiện trong bảng điều khiển trình duyệt Chromium khi mức độ "Verbose" được chọn.
cilf

Sử dụng gỡ lỗi trong Chrome: Không được phép gọi gỡ lỗi
Masoud Bimar

103

Về mặt kỹ thuật console.log console.debugconsole.infogiống hệt nhau Tuy nhiên cách họ hiển thị dữ liệu hơi khác nhau

console.log Văn bản màu đen không có biểu tượng

console.info Văn bản màu xanh với biểu tượng

console.debug Văn bản màu đen tinh khiết

console.warn Văn bản màu vàng với biểu tượng

console.error Văn bản màu đỏ với biểu tượng

var playerOne = 120;
var playerTwo = 130;
var playerThree = 140;
var playerFour = 150;
var playerFive = 160;

console.log("Console.log" + " " +  playerOne);
console.debug("Console.debug" + " " +playerTwo);
console.warn("Console.warn" + " " + playerThree);
console.info("Console.info" + " " + playerFour);
console.error("Console.error" + " " + playerFive);

nhập mô tả hình ảnh ở đây


Trong infonhật ký cấp độ trình duyệt google chrome được hiển thị đơn giản bằng một biểu tượng (giống như trong ảnh chụp nhanh) nhưng văn bản ( console.infovăn bản trong bài đăng của bạn) có màu đen và màu nền của hàng là màu trắng. Có thể ảnh chụp nhanh của bạn cho trình duyệt firefox.
RBT

3
Cảm ơn câu trả lời, rất rõ ràng với ảnh chụp màn hình. Mặc dù phải hỏi, tại sao nối chuỗi? Tại sao không chỉ console.log("Console.log");thay vì console.log("Console.log" + " " + playerOne);? Làm gì " " + playerOne?
hofnarwillie

Trong bảng điều khiển của tôi, tôi nhận được màn hình tương tự vớiconsole.log("Console.log"); console.debug("Console.debug"); console.warn("Console.warn"); console.info("Console.info"); console.error("Console.error");
kotchwane

36

Chúng gần như giống hệt nhau - sự khác biệt duy nhất là các thông báo gỡ lỗi được ẩn theo mặc định trong các phiên bản Chrome gần đây (bạn phải đặt mức nhật ký thành thanh Verbosetrên cùng của Devtools trong khi trong bảng điều khiển để xem thông báo gỡ lỗi; thông báo nhật ký được hiển thị theo mặc định).


2
Xin chào, điều này có vẻ đúng, nhưng tôi không thể tìm thấy bất kỳ thông tin nào về hành vi này. Các tài liệu Chrome không đề cập đến nó cho đến ngày hôm nay.
oligofren

3
Bây giờ tôi cuối cùng đã hiểu "đặt mức ghi nhật ký thành Verbose trên đầu bảng điều khiển". Ý bạn là trong Dev Tools có giao diện điều khiển ở phía dưới. Ở đầu phần này, cùng với Bộ lọc và bộ chọn khung, cũng có phần thả xuống cho các bản ghi (đặt trước cho "Thông tin")
oligofren

1
Đây là câu trả lời phù hợp nhất. Mọi người đều đề cập đến màu sắc nhưng đây là IMO quan trọng hơn.
DurkoMatko

15

console.info, console.debugcác phương thức giống hệt nhau console.log.

  • console.log Tuyên bố in
  • console.info Văn bản màu đen với biểu tượng "i" màu xanh lam
  • console.debug Văn bản màu xanh

Tài liệu:


Console.info in màu xanh lam, console.warn in màu vàng và console.error in màu đỏ
shivgre

Tôi đã thử nghiệm trong Chrome 52.0.2743.82 Console.Info in màu đen với biểu tượng màu xanh, Console.warn in màu đen với biểu tượng console màu vàng.error in màu đỏ với biểu tượng màu đỏ
Venkat

vui lòng chỉnh sửa câu trả lời của bạn cho phù hợp để tôi có thể nâng cấp hoặc xóa downvote, bạn có để ý biểu tượng "i" màu xanh trước văn bản in trong khi sử dụng console.info ()
shivgre

2

Nếu bạn muốn khả năng vô hiệu hóa ghi nhật ký sau khi sản phẩm kết thúc, bạn có thể ghi đè console.debug()chức năng hoặc tạo một tùy chỉnh khác.

console.debug = function() {
    if(!console.debugging) return;
    console.log.apply(this, arguments);
};

console.debugging = true;
console.debug('Foo', {age:41, name:'Jhon Doe'});

Foo▸ {tuổi: 41, tên: "Jhon Doe"}

console.debugging = false;
console.debug('Foo', {age:26, name:'Jane Doe'});

Không có đầu ra

Tuy nhiên, tôi chưa tìm ra cách để tô màu đầu ra.


1

Từ tài liệu của các trình duyệt, Các log, debugvà cũng có infophương pháp giống hệt nhau trong việc thực hiện khôn ngoan nhưng khác nhau về màu sắc và biểu tượng

https://jsfiddle.net/yp4z76gg/1/


1
Đây phải là một nhận xét hoặc thêm lời giải thích với câu trả lời về cách cả hai giống hệt nhau hoặc không có sự khác biệt để hiểu OP và những người khác.
Cảm ơn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.