У узла больше функциональных возможностей, чем у JavaScript в веб-браузере. Давайте изучим их здесь!
1. OS
JavaScript в веб-браузере не может получить информацию об операционной системе (ОС), но узел может
- os.type (): показывает тип операционной системы.
- os.uptime (): время после загрузки ОС.
- os.hostname (): показывает имя компьютера.
- os.release (): показывает версию ОС.
- os.homedir (): показывает путь к домашнему каталогу
- os.freemem (): показывает доступную оперативную память.
- os.totalmem (): показать весь объем памяти
2. Путь
Это помогает управлять папкой и путем к файлу
- Модуль path очень полезен, потому что каждая операционная система имеет свой разделитель пути.
- Тип Windows и тип POSIX
- Тип окна: разделены знаком ₩ (т. е. C: ₩ Пользователи ₩ gplee).
- Тип POSIX используется в операционных системах на основе Unix, таких как macOS и Linux.
- Тип POSIX: разделены / (т. е. / home / gplee).
- __filename, __dirname представляет текущий файл и путь к текущей папке соответственно.
- path: sep: разделитель пути (например, Windows:
\, POSIX:/) - path.delimiter: разделитель переменных env (например, Windows:
;, POSIX:) - path.dirname (путь): путь к файлу
- path.extname (путь): расширение файла.
- path.basename (путь, расширение): имя файла.
- path.parse (путь): разделите путь к файлу на root, dir, base, ext, name
- path.format (object): объект path.parse () к пути к файлу
- path.noramlize (путь): удалить дубликаты / \
- path.isAbsolute (path): return boolean сообщает, является ли путь к файлу абсолютным или относительным.
- path.join (path,…): объединить в путь
- path.resolve (path,…): объединить в путь
difference between path.join & path.resolve
--
- path.resolve : absolute path
- path.join : relative path
path.join('/a', '/b', 'c'); // /a/b/c
path.resolve('/a', '/b', 'c'); // /b/c
3. URL
Помогает манипулировать интернет-адресом (url)
- Это два типа манипулирования URL-адресом: 1) URL-адрес WHATWG 2) URL-адрес традиционного узла.

- url.parse (адрес): отдельный URL
- url.format (объект): заново собрать URL
4. querystring
преобразовать searchParams URL в объект
- querystring.parse (query): запрос URL-адреса в объект JavaScript.
- querystring.stringify (объект): запрос объекта к строке
5. крипто
1. Одностороннее шифрование
- Шифрование, которое невозможно расшифровать
- Например, пароль пользователя не нужно расшифровывать (просто сравните зашифрованный пароль в базе данных и ввод пользователя при входе в систему).
›Хеш

- createHash (алгоритм): создание алгоритма хеширования для использования. md5, sha1, sha256, sha512 доступны
- update (строка): строка для шифрования
- дайджест (кодировка): алгоритм кодирования. base64, шестнадцатеричный, latin1; base64 имеет самую короткую длину строки результата
›Pbkdf2 (нить + соль)

- создать соль с помощью метода randomBytes
- Методы pdkdf2 () принимают 1) строку для шифрования «пароля» 2) соль 3) количество вызовов (повторение) 4) алгоритм хеширования в качестве параметров
- Другими словами, описанный выше метод шифрует текст пароль 10 тысяч раз с помощью хеш-алгоритма sha512.
- 10k раз занимает всего 1 с
2. Двустороннее шифрование.
- Шифрование можно расшифровать
- Ключ используется для шифрования и дешифрования (тот же ключ)
›Шифр
- crypto.createCipher (алгоритм, ключ): используемый алгоритм & ключ
- cipher.update (строка, кодировка, кодировка вывода): мы используем кодировку utf8 и используем base64 для шифрования.
- cipher.final (кодировка вывода): шифрование завершает заданную кодировку вывода base64.
- crypto.createDecipher (алгоритм, ключ): используется для расшифровки (используется тот же алгоритм и ключ шифрования)
- decipher.update (строка, кодировка, кодировка вывода): то же, что и шифрование.
- decipher.final (кодировка вывода): то же, что и шифрование.
6. Утилита
- Модуль util имеет все служебные функции
- Многие API добавляются и удаляются по мере того, как они устаревают.
- util.deprecate: эта функция сообщает, что функция устарела.
- util.promisify: измените шаблон обратного вызова на шаблон обещания. async / await также