HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Одним из часто используемых модулей Node.JS является модуль<strong>util</strong>. В этой заметке мы рассмотрим встроенный в этот модуль метод util.inspect().</p>
1 <p>Одним из часто используемых модулей Node.JS является модуль<strong>util</strong>. В этой заметке мы рассмотрим встроенный в этот модуль метод util.inspect().</p>
2 <p>Метод util.inspect() дает возможность, что называется,<strong>красиво</strong>вывести любой объект, причем даже в том случае, если данный объект будет иметь ссылку на самого себя, как в примере ниже:</p>
2 <p>Метод util.inspect() дает возможность, что называется,<strong>красиво</strong>вывести любой объект, причем даже в том случае, если данный объект будет иметь ссылку на самого себя, как в примере ниже:</p>
3 <p>Теперь запустим:</p>
3 <p>Теперь запустим:</p>
4 <p>Мы можем воочию убедиться в том, что все действительно обработалось красиво. Причем если у объекта существует свойство "inspect", и это свойство равно функции, то данная функция будет вызвана и как раз ее результат и будет возвращен.</p>
4 <p>Мы можем воочию убедиться в том, что все действительно обработалось красиво. Причем если у объекта существует свойство "inspect", и это свойство равно функции, то данная функция будет вызвана и как раз ее результат и будет возвращен.</p>
5 <p>Еще пример:</p>
5 <p>Еще пример:</p>
6 <p>Мы сделали функцию "inspect".</p>
6 <p>Мы сделали функцию "inspect".</p>
7 <p>И нам вернулось "123". Следовательно, поведение метода "util.inspect()" напоминает "toString", причем данный метод используется консолью автоматически, когда она желает залогировать какой-нибудь объект.</p>
7 <p>И нам вернулось "123". Следовательно, поведение метода "util.inspect()" напоминает "toString", причем данный метод используется консолью автоматически, когда она желает залогировать какой-нибудь объект.</p>
8 <p>Теперь мы убрали "util.inspect()" и…</p>
8 <p>Теперь мы убрали "util.inspect()" и…</p>
9 <p>…все работает точно так же, а все потому, что в действительности консоль вызывает его внутри.</p>
9 <p>…все работает точно так же, а все потому, что в действительности консоль вызывает его внутри.</p>
10 <p>Правда, иногда все же надо явно обращаться к "util.inspect()", и особенно это касается тех случаев, когда у нас есть желание вывести что-либо не в консоль, а, к примеру, получить строчное представление объекта с целью вывода в файл. Вдобавок к этому, существуют дополнительные параметры "util.inspect()", с помощью которых мы можем, к примеру, задать глубину вывода объекта, однако применяются они довольно редко.</p>
10 <p>Правда, иногда все же надо явно обращаться к "util.inspect()", и особенно это касается тех случаев, когда у нас есть желание вывести что-либо не в консоль, а, к примеру, получить строчное представление объекта с целью вывода в файл. Вдобавок к этому, существуют дополнительные параметры "util.inspect()", с помощью которых мы можем, к примеру, задать глубину вывода объекта, однако применяются они довольно редко.</p>
11 <p>Впрочем, более подробно об этом всегда можно почитать в официальной документации:<em>https://nodejs.org/api/util.html#util_util_inspect_object_options.</em></p>
11 <p>Впрочем, более подробно об этом всегда можно почитать в официальной документации:<em>https://nodejs.org/api/util.html#util_util_inspect_object_options.</em></p>
12 <p><em>По материалам блога https://imnotgenius.com/.</em></p>
12 <p><em>По материалам блога https://imnotgenius.com/.</em></p>
13  
13