Як швидко та зручно відключити всі консолі.log заяви у моєму коді?


256

Чи є можливість вимкнути всі console.logзаяви у моєму коді JavaScript для тестування?


11
скористайтеся текстовим редактором, який підтримує "замінити всіх" та замініть "console.log" на "//console.log"
helloandre

5
@helloandre - це стає трохи стомлюючим, якщо ви використовуєте журнал, інформацію, попереджаєте налагодження та помилки
UpTheCreek

Будемо сподіватися, що ми дійдемо до точки, коли реалізації браузера автоматично обходять консолі консолі, якщо не включений інструмент налагодження браузера.
фансигнал

2
Відповіді нижче чудові, але вам не доведеться винаходити колесо на цьому. Погляньте на піколог . Він має API, сумісний з консоллю (NodeJS), тому ви можете використовувати його як заміну, що випадає. Він підтримує рівень ведення журналу з коробки, працює в браузері, на NodeJS і Nashorn, можна легко налаштувати за допомогою рядка запиту (браузер) або змінного оточення PICOLOG_LEVEL(вузол) , і це дуже мало. Менше, ніж 900 байтів, мінімізовані та блискавки. Відмова: Я - автор.
Штійн де Вітт

Існує простий спосіб перекрити всі consoleфункції. Подивіться на stapp.space/disable-javascript-console-on-production
Piotr Stapp

Відповіді:


426

Перевизначте функцію console.log у вашому сценарії.

console.log = function() {}

Ось і все, більше не втішати повідомлень.

Редагувати:

Розширюється ідея Сіда. Спеціальний реєстратор, який можна використовувати для вмикання / вимкнення входу зі свого коду.

З моєї консолі Firefox:

var logger = function()
{
    var oldConsoleLog = null;
    var pub = {};

    pub.enableLogger =  function enableLogger() 
                        {
                            if(oldConsoleLog == null)
                                return;

                            window['console']['log'] = oldConsoleLog;
                        };

    pub.disableLogger = function disableLogger()
                        {
                            oldConsoleLog = console.log;
                            window['console']['log'] = function() {};
                        };

    return pub;
}();

$(document).ready(
    function()
    {
        console.log('hello');

        logger.disableLogger();
        console.log('hi', 'hiya');
        console.log('this wont show up in console');

        logger.enableLogger();
        console.log('This will show up!');
    }
 );

Як користуватися вищевказаним "реєстратором"? У готовій події зателефонуйте logger.disableLogger, щоб консольні повідомлення не реєструвалися. Додайте дзвінки до logger.enableLogger та logger.disableLogger всередині методу, для якого потрібно ввійти повідомлення в консоль.


Надайте, будь ласка, детальну інформацію про те, що не працює? Чи подано вищенаведений рядок помилки? Якщо так, то яке повідомлення про помилку?
SolutionYogi

1
Для мене працює в IE8. ;-)
Євген Лазуткін

Код перезаписує і відновлює функцію console.log. Якщо IE7 підтримує метод console.log, він повинен працювати.
SolutionYogi

3
console.log = function () {}, здається, не працює у Firefox. Ви все ще отримуєте помилку "консоль не визначено".
DA.

2
Яке жахливе рішення. Модифікація console.log... Чому б просто не мати булеву та умовну функцію для ведення журналів?
Дементік

76

Далі більш ретельне:

var DEBUG = false;
if(!DEBUG){
    if(!window.console) window.console = {};
    var methods = ["log", "debug", "warn", "info"];
    for(var i=0;i<methods.length;i++){
        console[methods[i]] = function(){};
    }
}

Це скасує загальні методи в консолі, якщо вони існують, і їх можна викликати без помилок і практично без накладних витрат. У випадку браузера, як IE6 без консолі, будуть створені фіктивні методи для запобігання помилок. Звичайно, у Firebug є багато інших функцій, такі як трасування, профіль, час тощо. Вони можуть бути додані до списку, якщо ви використовуєте їх у своєму коді.

Ви також можете перевірити, чи є у налагоджувача ці спеціальні методи чи ні (тобто IE) та нульові ті, які він не підтримує:

if(window.console && !console.dir){
var methods = ["dir", "dirxml", "trace", "profile"]; //etc etc
    for(var i=0;i<methods.length;i++){
        console[methods[i]] = function(){};
    }
}

Це спрацювало на мене чудово, хоча я його трохи
підкоригував

27

Наскільки я можу зрозуміти з документації , Firebug не надає жодної змінної для переключення стану налагодження. Замість цього загорніть console.log () в обгортку, яка умовно викликає його, тобто:

DEBUG = true; // set to false to disable debugging
function debug_log() {
    if ( DEBUG ) {
        console.log.apply(this, arguments);
    }
}

Щоб не потрібно змінювати всі існуючі дзвінки, ви можете скористатися цим:

DEBUG = true; // set to false to disable debugging
old_console_log = console.log;
console.log = function() {
    if ( DEBUG ) {
        old_console_log.apply(this, arguments);
    }
}

1
Дякую, хоча це означає, що мені потрібно переписати всі свої консолі.log заяви як debug.log.
Зак Берт

Це правильний спосіб зробити це - звичайно, якщо ви починаєте з нуля.
OpenSource

3
Це також правильний спосіб зробити це, якщо у вашому редакторі є хороша функція пошуку / заміни.
BaroqueBobcat

2
Не потрібно писати власну обгортку, btw, принаймні, якщо ви використовуєте jQuery. Модуль налагодження jQuery відмінно працює. Як бонус він забезпечує емуляцію console.log у браузерах без нього. trainofoughts.org/blog/2007/03/16/jquery-plugin-debug
Нельсон

Єдина [незначна] проблема, звичайно, в тому, що вам потрібно встановити плагін. :) Приємно знати, хоча - дякую!
Cide

17

Ви не повинні!

Недобра практика перезаписувати вбудовані функції. Також немає гарантії, що ви придушите весь вихід, інші бібліотеки, які ви використовуєте, можуть відновити зміни та є інші функції, які можуть записувати на консоль; .dir(), .warning(), .error(), .debug(), І .assert()т.д.

Як деякі запропонували, ви можете визначити DEBUG_MODEзмінну та журнал умовно. Залежно від складності та характеру вашого коду, може бути хорошою ідеєю написати власний об’єкт / функцію реєстратора, який обертається навколо об’єкта консолі та має цю можливість вбудований. Це було б правильне місце для роботи з інструментами .

Однак, для 'тестування' ви можете писати тести замість друку на консолі. Якщо ви не робите тестування, і ці console.log()рядки були лише допоміжним засобом для написання вашого коду, просто видаліть їх .


7
"other libraries you use may revert your changes": якщо я відключу console.logна самому початку, вони не можуть повернутися до старої функції. Ну, вони можуть переписати console.logвихідний код, але чому? "it may be a good idea to write your own logger object/function that wraps around the console object": Я це робив у минулому, і це погана ідея. Слід консольного виводу відноситься до обгортки, а не до лінії, яка викликає його, що ускладнює налагодження.
Марко Сулла

3
@LucasMalor "на самому початку" означає, що код пов'язаний з цією інфраструктурою, що обмежує його повторне використання. Однак важко узагальнити; Гра, деякі анімації DOM не є такою ж, як логіка домену всередині складного SPA, пізніші не повинні знати браузера, не кажучи вже про те, що називається "консоль". У такому випадку у вас повинна бути правильна стратегія тестування, а не зламати console.log('Look ma, it reaches this point');в своєму коді, коли все інше не вдається, ви дійсно можете використовувати debugger;інструкцію.
istpaniuk

"the code is coupled to that infrastructure": код, ймовірно, але шаблон ні. Якщо ви створюєте загальний основний шаблон для своїх сторінок, де функції журналу вимкнено, це логіка, яку ви можете застосувати скрізь. "the later shouldn't be browser-aware": ну, так що вам не слід використовувати JS: P
Марко Сулла

3
@MarcoSulla Я думаю, що він отримує більш чистий код. Говорити ".... ти не повинен використовувати JS" - це трохи важко. В ідеалі, як програміст, незалежно від вашого оточення, ви повинні максимально модулювати; якщо це не стосується веб-переглядачів, ви можете розгорнути їх у більшій кількості місць: це одна менша залежність, щоб турбуватися про те, щоб зламати ваш матеріал. Отже, IMHO так, він насправді правий. Майте на увазі, що ви розпочали з того, що "Якщо ви створюєте загальний основний шаблон ...", який сам по собі вводить залежність. Таке мислення - це те, що ускладнює програмне забезпечення. Їжа для роздумів.
dudewad

1
Adobe SiteCatalyics кидає багато мотлоху в мою консоль, і в деяких випадках виникає клопот з налагодженням. Тож можливість тимчасово відключити console.log, коли я виконую сторонній дзвінок, була б дуже корисною для мене
спін

16

Я розумію, що це стара публікація, але вона все ще з’являється у верхній частині результатів Google, тому ось більш елегантне рішення, яке не jQuery, працює в останніх Chrome, FF та IE.

(function (original) {
    console.enableLogging = function () {
        console.log = original;
    };
    console.disableLogging = function () {
        console.log = function () {};
    };
})(console.log);

12

Я знаю, ви запитали, як відключити console.log, але це можливо те, що ви насправді хочете. Таким чином, вам не потрібно явно вмикати чи вимикати консоль. Він просто запобігає тим прикрім помилкам консолі для людей, які не мають її відкритими чи встановленими.

if(typeof(console) === 'undefined') {
    var console = {};
    console.log = console.error = console.info = console.debug = console.warn = console.trace = console.dir = console.dirxml = console.group = console.groupEnd = console.time = console.timeEnd = console.assert = console.profile = function() {};
}

2
Для відключення специфічного журналу IE виберіть відповідь Кріса С.
ГуруМ

11

Просто змініть прапор, DEBUGщоб замінити функцію console.log. Це повинно зробити трюк.

var DEBUG = false;
// ENABLE/DISABLE Console Logs
if(!DEBUG){
  console.log = function() {}
}

2
Я б пішов ще на крок і загорнув це у функцію / клас реєстратора. Щось подібне:function myLog(msg) { if (debug) { console.log(msg); } }
sleblanc

Якщо ви використовуєте Angular, ви можете використовувати його як глобальну конфігурацію у файлі application.js і використовувати його як глобальну властивість для вмикання / вимикання журналів. Пам'ятайте, консоль не буде визначеною, якщо у вас відкрита панель інструментів для розробників в IE.
Swanidhi

10

Я здивований, що з усіх цих відповідей ніхто не поєднує:

  • Жодних запитів
  • Анонімна функція не забруднювати глобальний простір імен
  • Обробіть випадок, коли window.console не визначено
  • Просто змініть .log функцію консолі

Я б пішов на це:

(function () {

    var debug = false

    if (debug === false) {
        if ( typeof(window.console) === 'undefined') { window.console = {}; }
        window.console.log = function () {};
    }
})()

9

Після того, як я знайшов цю проблему також і спробував її в моєму додатку cordova, я просто хочу попередити кожного розробника для Windows Phone, щоб не перезаписувати

    console.log

тому що додаток вийде з ладу при запуску.

Він не вийде з ладу, якщо ви розробляєте місцевий, якщо вам пощастить, але подавши його в магазин, це призведе до збою програми.

Просто перепишіть

    window.console.log 

якщо вам потрібно.

Це працює в моєму додатку:

   try {
        if (typeof(window.console) != "undefined") {
            window.console = {};
            window.console.log = function () {
            };
            window.console.info = function () {
            };
            window.console.warn = function () {
            };
            window.console.error = function () {
            };
        }

        if (typeof(alert) !== "undefined") {
            alert = function ()
            {

            }
        }

    } catch (ex) {

    }

Дякую за "попередження". ЗАРАЗ, я випустив додаток на базі кордової програми в магазині GooglePlay, протестував його на телефонних пристроях, і все було добре. Я можу припустити, що ваше попередження було обмежено магазином додатків на основі Windows? ... ЯКЩО, радимо покласти оп у кронштейн для пробування на випадок, якщо він підірветься. Звідси великі пальці вгору.
Пані

8

Якщо ви використовуєте IE7, консоль не буде визначена. Отже, більш зручною для IE версією буде:

if (typeof console == "undefined" || typeof console.log == "undefined") 
{
   var console = { log: function() {} }; 
}

5

Це гібрид відповідей SolutionYogi та Chris S. Він підтримує номери рядків console.log та ім'я файлу. Приклад jsFiddle .

// Avoid global functions via a self calling anonymous one (uses jQuery)
(function(MYAPP, $, undefined) {
    // Prevent errors in browsers without console.log
    if (!window.console) window.console = {};
    if (!window.console.log) window.console.log = function(){};

    //Private var
    var console_log = console.log;  

    //Public methods
    MYAPP.enableLog = function enableLogger() { console.log = console_log; };   
    MYAPP.disableLog = function disableLogger() { console.log = function() {}; };

}(window.MYAPP = window.MYAPP || {}, jQuery));


// Example Usage:
$(function() {    
    MYAPP.disableLog();    
    console.log('this should not show');

    MYAPP.enableLog();
    console.log('This will show');
});


3

Я використовував таке, щоб вирішити цю проблему: -

var debug = 1;
var logger = function(a,b){ if ( debug == 1 ) console.log(a, b || "");};

Встановіть налагодження на 1, щоб увімкнути налагодження. Потім використовуйте функцію реєстратора під час виводу тексту налагодження. Він також налаштований приймати два параметри.

Отже, замість

console.log("my","log");

використання

logger("my","log");

3

Раніше я використовував лісоруб Вінстона .

Нині я використовую нижче простіший код з досвіду:

  1. Встановити змінну середовища з cmd / командного рядка (у Windows):

    cmd
    setx LOG_LEVEL info

Або ви можете мати змінну у своєму коді, якщо хочете, але вище краще.

  1. Перезапустіть cmd / командний рядок або IDE / редактор, як Netbeans

  2. Внизу, як код:

    console.debug = console.log;   // define debug function
    console.silly = console.log;   // define silly function
    
    switch (process.env.LOG_LEVEL) {
        case 'debug':
        case 'silly':
            // print everything
            break;
    
        case 'dir':
        case 'log':
            console.debug = function () {};
            console.silly = function () {};
            break;
    
        case 'info':
            console.debug = function () {};
            console.silly = function () {};
            console.dir = function () {};
            console.log = function () {};
            break;
    
        case 'trace':   // similar to error, both may print stack trace/ frames
        case 'warn':    // since warn() function is an alias for error()
        case 'error':
            console.debug = function () {};
            console.silly = function () {};
            console.dir = function () {};
            console.log = function () {};
            console.info = function () {};
            break;
    }
  3. Тепер використовуйте всю консоль. *, Як показано нижче:

    console.error(' this is a error message '); // will print
    console.warn(' this is a warn message '); // will print
    console.trace(' this is a trace message '); // will print
    console.info(' this is a info message '); // will print, LOG_LEVEL is set to this
    
    console.log(' this is a log message '); // will NOT print
    console.dir(' this is a dir message '); // will NOT print
    console.silly(' this is a silly message '); // will NOT print
    console.debug(' this is a debug message '); // will NOT print

Тепер, виходячи з ваших налаштувань LOG_LEVEL, зроблених у пункті 1 (наприклад, setx LOG_LEVEL logта перезапустіть командний рядок), деякі з вищезазначених будуть надруковані, інші не надрукуються

Сподіваюся, що це допомогло.


2

Попередження: Безсоромний штекер!

Ви також можете використовувати щось на зразок мого об'єкта JsTrace для модульного відстеження з можливістю "перемикання" на рівні модуля, щоб увімкнути лише те, що ви хочете бачити в той час.

http://jstrace.codeplex.com

(Також є пакет NuGet, для тих, хто дбає)

Усі рівні за замовчуванням є "помилками", хоча ви можете їх "вимкнути". Хоча я не можу придумати, чому ви НЕ хочете бачити помилки

Ви можете змінити їх так:

Trace.traceLevel('ModuleName1', Trace.Levels.log);
Trace.traceLevel('ModuleName2', Trace.Levels.info);

Для отримання додаткових документів перегляньте Документацію

Т


2

Я знайшов трохи вдосконалений фрагмент коду в цій URL-адресі JavaScript Порада: Bust and Disable console.log :

var DEBUG_MODE = true; // Set this value to false for production

if(typeof(console) === 'undefined') {
   console = {}
}

if(!DEBUG_MODE || typeof(console.log) === 'undefined') {
   // FYI: Firebug might get cranky...
   console.log = console.error = console.info = console.debug = console.warn = console.trace = console.dir = console.dirxml = console.group = console.groupEnd = console.time =    console.timeEnd = console.assert = console.profile = function() {};
}

2

Я розробив бібліотеку для цього використання: https://github.com/sunnykgupta/jsLogger

Особливості:

  1. Це безпечно перекриває console.log.
  2. Слідкуйте за тим, щоб консоль недоступна (о так, і вам потрібно це врахувати.)
  3. Зберігає всі журнали (навіть якщо вони придушені) для подальшого пошуку.
  4. Рукоятки основних функцій консолі подобається log, warn, error, info.

Відкрита для модифікацій і оновлюватиметься щоразу, коли з’являться нові пропозиції.


2

Це повинно перекрити всі методи window.console. Ви можете розмістити його в самому верху розділу сценаріїв, і якщо ви знаходитесь в рамках PHP, ви можете надрукувати цей код лише тоді, коли ваше середовище додатка виробляється, або якщо якийсь прапор налагодження відключений. Тоді ви б усі свої журнали у своєму коді працювали в середовищі розробки або в режимі налагодження.

window.console = (function(originalConsole){
    var api = {};
    var props = Object.keys(originalConsole);
    for (var i=0; i<props.length; i++) {
        api[props[i]] = function(){};
    }
    return api;
})(window.console);

1

Я написав це:

//Make a copy of the old console.
var oldConsole = Object.assign({}, console);

//This function redefine the caller with the original one. (well, at least i expect this to work in chrome, not tested in others)
function setEnabled(bool) {
    if (bool) {
        //Rewrites the disable function with the original one.
        console[this.name] = oldConsole[this.name];
        //Make sure the setEnable will be callable from original one.
        console[this.name].setEnabled = setEnabled;
    } else {
        //Rewrites the original.
        var fn = function () {/*function disabled, to enable call console.fn.setEnabled(true)*/};
        //Defines the name, to remember.
        Object.defineProperty(fn, "name", {value: this.name});
        //replace the original with the empty one.
        console[this.name] = fn;
        //set the enable function
        console[this.name].setEnabled = setEnabled

    }
}

На жаль, він не працює у суворому режимі.

Отже, використовуючи console.fn.setEnabled = setEnabledі тоді, console.fn.setEnabled(false)де fnможе бути майже будь-яка функція консолі. Для вашого випадку було б:

console.log.setEnabled = setEnabled;
console.log.setEnabled(false);

Я написав це також:

var FLAGS = {};
    FLAGS.DEBUG = true;
    FLAGS.INFO = false;
    FLAGS.LOG = false;
    //Adding dir, table, or other would put the setEnabled on the respective console functions.

function makeThemSwitchable(opt) {
    var keysArr = Object.keys(opt);
    //its better use this type of for.
    for (var x = 0; x < keysArr.length; x++) {
        var key = keysArr[x];
        var lowerKey = key.toLowerCase();
        //Only if the key exists
        if (console[lowerKey]) {
            //define the function
            console[lowerKey].setEnabled = setEnabled;
            //Make it enabled/disabled by key.
            console[lowerKey].setEnabled(opt[key]);
        }
    }
}
//Put the set enabled function on the original console using the defined flags and set them.
makeThemSwitchable(FLAGS);

тож вам просто потрібно ввести значення FLAGSза замовчуванням (перед тим, як виконати вищевказаний код), наприклад, FLAGS.LOG = falseі функція журналу буде відключена за замовчуванням, і все ж ви могли б включити її викликconsole.log.setEnabled(true)


ви вважаєте, що це можна використовувати для включення console.log у виробничому середовищі на ходу? як відкрити консоль Chrome, запустіть console.log.setEnabled(true)і починайте бачити журнали
Rodrigo Assis

1
@RodrigoAssis так, це спрацює. Я створив це лише для того, щоб не втратити лінію виклику та ввімкнути будь-де, але це не найкращий спосіб зробити це. Найкращим способом для журналів є використання способу короткого замикання на кшталт: var debug = false; debug && console.log(1/3)оскільки вам не потрібно оцінювати вміст журналу, якщо він не ввімкнено (у цьому випадку 1/3не буде оцінено), не втрачайте рядок абонента та можете активувати це також легко (якщо не змінюється як consts).
Габріель Де Олівейра Роден

1

Моє комплексне рішення для відключення / зміни всіх console.*функцій є тут .

Звичайно, будь ласка, переконайтеся, що ви включили його після перевірки необхідного контексту. Наприклад, лише у тому числі у виробництві, це не бомбардування будь-яких інших важливих компонентів тощо.

Цитуючи це тут:

"use strict";
(() => {
  var console = (window.console = window.console || {});
  [
    "assert", "clear", "count", "debug", "dir", "dirxml",
    "error", "exception", "group", "groupCollapsed", "groupEnd",
    "info", "log", "markTimeline", "profile", "profileEnd", "table",
    "time", "timeEnd", "timeStamp", "trace", "warn"
  ].forEach(method => {
    console[method] = () => {};
  });
  console.log("This message shouldn't be visible in console log");
})();


1

Якщо ви використовуєте gulp, ви можете використовувати цей плагін:

Встановіть цей плагін за допомогою команди:

npm install gulp-remove-logging

Далі додайте цей рядок у свій gulpfile:

var gulp_remove_logging = require("gulp-remove-logging");

Нарешті, додайте параметри конфігурації (див. Нижче) у свій gulpfile.

Конфігурація завдання

gulp.task("remove_logging", function() {
     return gulp.src("src/javascripts/**/*.js")
    .pipe(
      gulp_remove_logging()
    )
    .pipe(
      gulp.dest(
        "build/javascripts/"
      )
    ); });

1

Спрощення https://stackoverflow.com/a/46189791/871166

switch (process.env.LOG_LEVEL) {
  case 'ERROR':
    console.warn = function() {};
  case 'WARN':
    console.info = function() {};
  case 'INFO':
    console.log = function() {};
  case 'LOG':
    console.debug = function() {};
    console.dir = function() {};
}

0

Ви можете використовувати JavaScript AOP (наприклад, jquery-aop ) для перехоплення всіх викликів у console.debug / log (навколо) і не продовжувати фактичне виклик, якщо для якоїсь глобальної змінної встановлено значення false.

Ви навіть можете робити ajax-дзвінок (час від часу), щоб ви могли змінити поведінку з увімкненим / відключеним журналом на сервері, що може бути дуже цікаво, щоб увімкнути налагодження, коли ви стикаєтеся з проблемою в інсценізаційному середовищі чи іншому.


Я такого рішення не реалізував, не бачив. Це поки що теоретично.
Stijn Geukens

0

Ви можете використовувати logeek , це дозволяє контролювати видимість ваших журналів. Ось як це зробити:

<script src="bower_components/dist/logeek.js"></script>

logeek.show('security');

logeek('some message').at('copy');       //this won't be logged
logeek('other message').at('secturity'); //this would be logged

Ви також logeek.show('nothing')можете повністю відключити кожне повідомлення журналу.


0

Провівши деякі дослідження та розробки цієї проблеми, я натрапив на це рішення, яке приховуватиме попередження / помилки / журнали відповідно до вашого вибору.

    (function () {
    var origOpen = XMLHttpRequest.prototype.open;
    XMLHttpRequest.prototype.open = function () {        
        console.warn = function () { };
        window['console']['warn'] = function () { };
        this.addEventListener('load', function () {                        
            console.warn('Something bad happened.');
            window['console']['warn'] = function () { };
        });        
    };
})();

Додайте цей код перед плагіном JQuery (наприклад, /../jquery.min.js), оскільки це код JavaScript, який не потребує JQuery. Тому що деякі попередження є в самому JQuery.

Дякую!!


0

Я написав рішення ES2015 (використовувати лише з Webpack ).

class logger {
  static isEnabled = true;

  static enable () {
    if(this.constructor.isEnabled === true){ return; }

    this.constructor.isEnabled = true;
  }

  static disable () {
    if(this.constructor.isEnabled === false){ return; }

    this.constructor.isEnabled = false;
  }

  static log () {
    if(this.constructor.isEnabled === false ) { return; }

    const copy = [].slice.call(arguments);

    window['console']['log'].apply(this, copy);
  }

  static warn () {
    if(this.constructor.isEnabled === false ) { return; }

    const copy = [].slice.call(arguments);

    window['console']['warn'].apply(this, copy);
  }

  static error () {
    if(this.constructor.isEnabled === false ) { return; }

    const copy = [].slice.call(arguments);

    window['console']['error'].apply(this, copy);
  }
}

Опис:

  1. Поряд з logger.enable та logger.disable ви можете використовувати консольні. ['Log', 'warn', 'error'] методи, а також використовуючи клас реєстратора.
  2. Використовуючи клас реєстратора для відображення, включення або відключення повідомлень, робить код набагато більш чистим і доступним.
  3. Код нижче показує, як використовувати клас реєстратора:
    • logger.disable() - відключити всі консольні повідомлення
    • logger.enable() - включити всі консольні повідомлення
    • logger.log('message1', 'message2') - працює точно як console.log.
    • logger.warn('message1', 'message2') - працює точно як console.warn.
    • logger.error('message1', 'message2')- працює точно як console.error. Щасливе кодування ..
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.