Рубрики
Без рубрики

Понять, не подражать. Nodejs в глубоком

Эта статья для тех, у кого есть базовые знания о JavaScript

Автор оригинала: Marjo Ballabani.

Эта статья для тех, у кого есть базовые знания о JavaScript

В сторону JavaScript

JavaScript думает, что вы должны знать, чтобы убедиться, что вы правильно понимаете Nodejs

  1. С функциями вы можете сделать все, что вы можете сделать с другими типами, потому что функции – это первый тип

  2. Объекты – это коллекция пар/значений

  3. Конструкторы функций являются нормальными функциями, которые используются для построения объектов

  4. Наследование в JavaScript: один объект получает доступ к свойствам и методам другого объекта

    Наследование в JavaScript является прототипицем: помните, что каждый объект имеет .prototype как свойство

  5. Объекты проходят посредством ссылки

  6. Немедленно вызываемые функции являются функциями, которые вызываются в тот момент, когда они созданы

    Каждый, что внутри функции – это область этой функции, другими словами, они изолированы к этой функции

Node.js.

  1. V8.

    • V8 – библиотека C ++, которая может работать в одиночку или реализована в другом проекте C ++
    • V8 Цель состоит в том, чтобы принять файл, написанный в JavaScript и компилируйте его в машинный код
    • Любая программа, которая реализует V8, может расширить свою функцию
  2. Сердечник узла

    • Nodejs – это программа C ++, которая реализует V8 и добавлена новых функций

    • Внутри узла также являются файлами .js, которые являются узлами JS CORE

  3. Модули, экспорт и требуют

    • Модуль

      Многоразовый блок кода, который существует случайно случайно влияет на другой код

    • требуют и экспортировать

      • Когда узел выполняет файл или вам требуется файл узел создает объект модуля, который является частью сердечника узла

        Как вы можете видеть, ваш код не является немедленным скомпилированным, но он обернут внутри функции, которая имеет модуль, требуется и т. Д. В качестве параметров и чем скомпилирован, что функция и чем выполнена. Вот почему каждый оттензит, потому что ваш код на самом деле – это бод. Функция это чем скомпилировано. И эта функция потребовала, модуль и т. Д. в качестве параметров, и именно поэтому эти думания доступны в вашем коде. Этот создаваемый модуль, который создан, сохраняется в массиве объекта, который использует узел для отслеживания ваших модулей

      • Требуется функция, которую вы проходите путь тоже

      • Module.exports – это то, что требуется функция возврата

      • Это работает, потому что ваш код фактически завернут в функцию, которая дает те вещи в качестве функциональных параметров

      • Как я уже упоминал каждый модуль, который вам требуется, сохраняется в массиве, называемом _cache

        Это сделано для отслеживания модулей, которые вы создаете И если вы называете один и тот же модуль несколько раз на самом деле это не будет Выполните свой код еще раз, но вернете код, который вы выполнили ранее. Так что вы получите тот же модуль. Экспорты, что и первая потребность

        Будьте осторожны с тем, что вы экспортируете из своего модуля сейчас, когда вы знаете это

    1. Модульные шаблоны

      Есть несколько шаблонов, которые ваш модуль может использовать для экспорта. Нет правильного способа сделать это Это все о архитектурном выборе. Так что вы можете использовать каждый из этого в зависимости от вашего выбора.

    2. Экспорт VS Module.exports.

      Экспорт INCACT – это сокращение модуля. Экспорты они разные ссылки, указывающие на тот же объект Вы можете использовать оба, но будьте осторожны!

      Правильный способ использовать это – мутировать его не изменять ссылку, но мутировать его

      Вы можете использовать как экспорт, так и модуль. Экспорты, но будьте осторожны при использовании экспорта. На мой взгляд, вы должны использовать всегда Module.exports