Рассказывая про NodeJS мы предполагаем, что у читателя уже есть опыт программирования на JavaScript и понимание работы серверного программного обеспечения. Поэтому не будем углубляться в пояснение работы JavaScript функций, которые используем в этом цикле статей.
При таком выполнении кода для него характерны все черты PHP. К примеру, если в коде запросить текущую дату, то вернётся время сервера, а не клиента, как это происходит с JavaScript кодом в браузере пользователя. Но зато становится возможным делать обращения к файлам на сервере (записывать в них данные и т.п.).Сами скрипты NodeJS пишутся на языке JavaScript. А файлы для выполнения обычно имеют расширение ".js". При этом нужно установить компилятор NodeJS на сервер (как и в случае с PHP). Выполнять файлы можно такой командой:
node имя_файла.js;
Эту команду необходимо выполнять в консоли сервера. А в параметре "имя_файла.js" указывать абсолютный или относительный путь к выполняемому файлу.
Простейшие примеры NodeJS
Попробуем написать простейший код на NodeJS и выполнить его. Для этого создадим файл с названием "file.js" в любой папке сервера и перейдём в неё. Затем откроем этот файл любым редактором и оставим там следующий код:console.log('Тише, мыши, кот на крыше!');
Теперь выполним этот файл с помощью команды:
node file.js
В консоль сервере будет выведена строка:
Тише, мыши, кот на крыше!
Как было сказано ранее, в таком способе исполнения JS кода есть преимущество. Можно записывать и считывать любой доступный файл с сервера, поэтому часть наших статей в этом разделе будет посвящена работе с файлами. Пример кода для считывания файла:
var fs = require('fs'); // модуль для чтения файлов
var text = fs.readFileSync('название_файла.txt', 'utf8');
console.log(text);
Благодаря тому, что NodeJS исполняется на сервере, нет нужды подстраивать код сайта под версию JavaScript посетителя сайта. Поэтому можно использовать все самые современные способы программирования. К примеру, с 2015 года в JavaScript можно задавать переменные не через слово "var", а через "let". Это даёт ряд преимуществ:
- Видимость переменной ограничена ближайшими внешними фигурными скобками { }.
- При обращении к переменной до объявления выдаётся ошибка.
- Нельзя объявить две переменные с одним названием.