1
2
3
4
5
sudo apt update
sudo apt install -y build-essential
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt install -y nodejs
sudo apt update
Установка из официального сайта на Windows. На Linux - установка из официального и кастомного репозитория. Команда node без параметров запускает интерактивный интерпретатор (RELP) Команда node filename позволяет запускать программы на JavaScript. В node нет окружения браузера, а значит - объекта document. Но зато мы можем работать с файловой системой
1
2
3
4
5
6
npm -v
npm help
node
node app.js
1
2
3
4
5
6
7
8
9
10
11
npm install lodash
npm install -g lodash
npm install -D lodash
npm install -save lodash
npm remove gulp --save-dev
npm update lodash --save
1
2
3
4
"scripts": {
"start": "node index.js",
"dev": "live-server"
}
1
2
$ npm start
$ npm run dev
1
console.log("Hello, world!")
1
node index.js
1
node index
1
2
3
4
5
function hello(msg){
concole.log(msg);
}
hello("Hello from function!")
Функции, классы.
1
2
3
4
5
6
7
8
9
10
11
12
13
{
"name": "docker_web_app",
"version": "1.0.0",
"description": "node.js on docker",
"author": "first last <first.last@example.com>",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"dependencies": {
"express": "^4.16.1"
}
}
1
npm init
1
2
3
4
5
6
7
//person.js
const person = {
name: 'John Doe',
age: 30
};
module.exports = person;
1
2
3
//index.js
const person = require('./person');
console.log(person.age);
Импорт переменной из другого файла Импорт функции, класса Импорт стандартного модуля Импорт стороннего модуля
Простой сервер
1
2
3
4
5
6
7
8
9
10
11
12
13
14
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
})
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
})
Работа с файлом index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const http = require('http');
const fs = require('fs');
const hostname = '127.0.0.1';
const port = 3000;
fs.readFile('index.html', (err, html) => {
if (err){
throw err;
}
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/html');
res.write(html);
res.end();
})
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
})
});