Node.js: утилитный модуль
Вступление
Модуль «util» node.js предоставляет некоторые функции для печати форматированных строк, а также некоторые «служебные» функции, которые полезны для целей отладки. Используйте require ('util') для доступа к этим функциям. Следующие функции находятся в модуле «Утилита».
Содержание:
- util.format (формат, [...])
- util.debug (строка)
- util.error ([...])
- util.puts ([...])
- util.print ([...])
- util.log (строка)
- util.inspect (объект, [параметры])
- Настройка цветов util.inspect
- util.isArray (объект)
- util.isRegExp (объект)
- util.isDate (объект)
- util.isError (объект)
- util.inherits (конструктор, суперконструктор)
util.format (формат, [...])
Util.format () используется для создания форматированной строки из одного или нескольких аргументов. Первый аргумент - это строка, которая содержит ноль или более заполнителей. Заполнитель - это последовательность символов в строке формата и заменяется другим значением в возвращаемой строке.
Список заполнителя:
- % - возвращает один знак процента.
- d - Рассматривается как число (как целое число, так и число с плавающей запятой).
- s - Рассматривается как строка и отображается как строка.
- j - представляет данные JSON.
Вот некоторые примеры :
var util = require('util');
var my_name ='Sunita',
my_class = 5,
my_roll_no = 11,
my_fav_subject= { subj1: 'English', subj2: 'Math.'};
var format1 = util.format('My name is %s ',my_name);
var format2 = util.format('I read in class %d,',my_class);
var format3 = util.format('My roll no. is %d,',my_roll_no);
var format4 = util.format('My favorite subjects are %j',my_fav_subject);
console.log(format1);
console.log(format2);
console.log(format3);
console.log(format4);
Выход :
E: / nodejs> узел test.js Меня зовут сунита Я читаю в 5 классе, Мой ролл нет. это 11, Мои любимые предметы: {"subj1": "английский", "subj2": "математика".}
util.debug (строка)
Функция используется для немедленного блокирования процесса и вывода строки в stderr.
Вот некоторые примеры :
var util = require('util');
var testString ="Test Test";
util.debug(testString); // "Test Test";
var test = {};
util.debug(test); // "[object Object]";
util.debug(JSON.stringify(test)); // "{}"
Выход :
E: / nodejs> узел test.js
DEBUG: Тестовый Тест ОТЛАДКА: [объект Объект] ОТЛАДКА: {}
util.error ([...])
Функция принимает несколько аргументов и записывает их в stderr.
Вот примеры:
var util = require("util");
util.error("Error-1","Error-2","Error-3");
Выход :
E: / nodejs> узел test.js Ошибка-1 Ошибка-2 Ошибка-3
util.puts ([...])
Функция принимает несколько аргументов и записывает их в stderr с символами новой строки после каждого аргумента.
Вот примеры:
var util = require("util");
util.puts("A", "B","C");
Выход :
E: / nodejs> узел test.js В С
util.print ([...])
Функция принимает несколько аргументов, преобразует каждый из них в строку и затем записывает их в стандартный вывод без добавления новой строки после каждого аргумента.
Вот примеры:
var util = require("util");
util.print(1, 2, '3');
Выход :
E: / nodejs> узел test.js 123
util.log (строка)
Функция используется для записи строки в стандартный вывод с отметкой времени.
Вот примеры:
var util = require('util');
util.log('Timestamped message.');
Выход :
E: / nodejs> узел test.js 24 октября 14:23:16 - сообщение с меткой времени.
util.inspect (объект, [параметры])
Функция возвращает строковое представление объекта, что полезно для отладки.
Дополнительные опции:
- showHidden - если true, тогда будут показаны не перечисляемые свойства объекта. По умолчанию false.
- глубина - говорит проверять, сколько раз повторять при форматировании объекта. Это полезно для проверки больших сложных объектов. По умолчанию 2. Чтобы сделать его рекурсивным бесконечно передать NULL.
- colors - если true, то вывод будет оформлен с помощью цветовых кодов ANSI. По умолчанию false. Цвета настраиваются, см. Ниже.
- customInspect - если false, то пользовательские функции inspect (), определенные для проверяемых объектов, вызываться не будут. По умолчанию true.
В следующем примере перечислены встроенные объекты узла.
var util = require('util')
console.log(util.inspect(console));
Выход :
E: / nodejs> узел test.js {log: [Function], информация: [Функция], предупредить: [Функция], ошибка: [Функция], dir: [Функция], время: [Функция], timeEnd: [Функция], трассировка: [функция], утверждать: [Функция], Консоль: [Функция: Консоль]}
Вот пример проверки всех свойств объекта util:
var util = require('util');
console.log(util.inspect(util, { showHidden: true, depth: null }));
Настройка цветов util.inspect:
Необязательный аргумент colorize является логическим значением, которое добавляет escape-коды ANSI к строковому выводу. Когда вы заходите в окно терминала, оно должно быть напечатано цветами.
var util = require('util');
console.log(util.inspect({x:100, y:"y"}, false,2,true));
Выход :
util.isArray (объект)
Функция используется для проверки, является ли объект объектом массива или нет. Возвращает true, если заданный объект является массивом, в противном случае - false.
Вот примеры:
var util = require('util');
console.log(util.isArray([]));
console.log(util.isArray(new Array));
console.log(util.isArray({}))
Выход :
E: / nodejs> узел test.js правда правда ложный
util.isRegExp (объект)
Функция используется для проверки, является ли «объект» RegExp или нет. Возвращает true, если заданный объект является RegExp, иначе false.
Вот примеры:
var util = require('util');
console.log(util.isRegExp(/some regexp/));
onsole.log(util.isRegExp(new RegExp('New regexp')));
console.log(util.isRegExp({}))
Выход :
E: / nodejs> узел test.js правда правда ложный
util.isDate (объект)
Функция используется для проверки, является ли «объект» датой или нет. Возвращает true, если данный «объект» является датой, в противном случае - false.
Вот примеры:
var util = require('util');
console.log(util.isDate(new Date()));
console.log(util.isDate(Date()));
console.log(util.isDate({}))
Выход:
E: / nodejs> узел test.js правда ложный ложный
util.isError (объект)
Функция используется для проверки, является ли «объект» ошибкой или нет. Возвращает true, если заданный объект является ошибкой, в противном случае - false.
Вот примеры:
var util = require('util');
console.log(util.isError(new Error()));
console.log(util.isError(new TypeError()));
console.log(util.isError({ name: 'Error', message: 'an error occurred' }));
Выход :
E: / nodejs> узел test.js правда правда ложный
util.inherits (конструктор, суперконструктор)
Функция используется для наследования методов-прототипов из одного конструктора в другой. Прототип конструктора будет установлен на новый объект, созданный из superConstructor. Для дополнительного удобства superConstructor будет доступен через свойство constructor.super_.
Вот примеры:
var util = require("util");
var events = require("events");
function MyStream() {
events.EventEmitter.call(this);
}
util.inherits(MyStream, events.EventEmitter);
MyStream.prototype.write = function(data) {
this.emit("data", data);
}
var stream = new MyStream();
console.log(stream instanceof events.EventEmitter);
console.log(MyStream.super_ === events.EventEmitter);
stream.on("data", function(data) {
console.log('Received data: "' + data + '"');
})
stream.write("It works!");
Выход :
E: / nodejs> узел test.js правда правда Полученные данные: «Работает!»
Предыдущий: Http-модуль
Далее: ведение журнала консоли
Новый контент: Composer: менеджер зависимостей для PHP , R программирования