super commit

This commit is contained in:
kogleee
2023-10-19 12:27:57 +03:00
commit fe27e43034
28 changed files with 412 additions and 0 deletions

9
task1/app.js Normal file
View File

@@ -0,0 +1,9 @@
const greeting = require('./greeting');
const http = require('http');
http.createServer(function (request, response) {
response.end('Hello NodeJS!');
}).listen(3000, '127.0.0.1', function () {
console.log(
'Сервер начал прослушивание запросов на порту 3000'
);
});

0
task1/greeting.js Normal file
View File

1
task2/1/app.js Normal file
View File

@@ -0,0 +1 @@
const greeting = require('./greeting');

1
task2/1/greeting.js Normal file
View File

@@ -0,0 +1 @@
console.log('greeting module');

8
task2/2/app.js Normal file
View File

@@ -0,0 +1,8 @@
const os = require('os');
const greeting = require('./greeting');
// получим имя текущего пользователя
let userName = os.userInfo().username;
console.log(`Дата запроса: ${greeting.date}`);
console.log(greeting.getMessage(userName));

9
task2/2/greeting.js Normal file
View File

@@ -0,0 +1,9 @@
let currentDate = new Date();
module.exports.date = currentDate;
module.exports.getMessage = function (name) {
let hour = currentDate.getHours();
if (hour > 16) return 'Добрый вечер, ' + name;
else if (hour > 10) return 'Добрый день, ' + name;
else return 'Доброе утро, ' + name;
};

5
task2/3/app.js Normal file
View File

@@ -0,0 +1,5 @@
const User = require('./user.js');
let eugene = new User('Eugene', 32);
eugene.sayHi();

9
task2/3/greeting.js Normal file
View File

@@ -0,0 +1,9 @@
let currentDate = new Date();
module.exports.date = currentDate;
module.exports.getMessage = function (name) {
let hour = currentDate.getHours();
if (hour > 16) return 'Добрый вечер, ' + name;
else if (hour > 10) return 'Добрый день, ' + name;
else return 'Доброе утро, ' + name;
};

14
task2/3/user.js Normal file
View File

@@ -0,0 +1,14 @@
function User(name, age) {
this.name = name;
this.age = age;
this.displayInfo = function () {
console.log(
`Имя: ${this.name} Возраст: ${this.age}`
);
};
}
User.prototype.sayHi = function () {
console.log(`Привет, меня зовут ${this.name}`);
};
module.exports = User;

4
task3/app.js Normal file
View File

@@ -0,0 +1,4 @@
const welcome = require('./welcome');
welcome.getMorningMessage();
welcome.getEveningMessage();

1
task3/greeting.js Normal file
View File

@@ -0,0 +1 @@
module.exports.name = 'Alice';

1
task3/welcome/evening.js Normal file
View File

@@ -0,0 +1 @@
module.exports = 'Добрый вечер';

11
task3/welcome/index.js Normal file
View File

@@ -0,0 +1,11 @@
const morning = require('./morning');
const evening = require('./evening');
module.exports = {
getMorningMessage: function () {
console.log(morning);
},
getEveningMessage: function () {
console.log(evening);
},
};

1
task3/welcome/morning.js Normal file
View File

@@ -0,0 +1 @@
module.exports = 'Доброе утро';

6
task4/app.js Normal file
View File

@@ -0,0 +1,6 @@
const greeting = require('./greeting');
global.name = 'Eugene';
console.log(date);
console.log(greeting.getMessage())

10
task4/greeting.js Normal file
View File

@@ -0,0 +1,10 @@
let currentDate = new Date();
global.date = currentDate;
module.exports.getMessage = function () {
let hour = currentDate.getHours();
if (hour > 16) return 'Добрый вечер, ' + global.name;
else if (hour > 10) return 'Добрый день, ' + name;
else return 'Доброе утро, ' + name;
};

10
task5/app.js Normal file
View File

@@ -0,0 +1,10 @@
let nodePath = process.argv[0];
let appPath = process.argv[1];
let name = process.argv[2];
let age = process.argv[3];
console.log('nodePath: ' + nodePath);
console.log('appPath: ' + appPath);
console.log();
console.log('name: ' + name);
console.log('age: ' + age);

6
task6/app.js Normal file
View File

@@ -0,0 +1,6 @@
let name = process.argv[2];
let age = process.argv[3];
console.log('name: ' + name);
console.log('age: ' + age);

241
task6/package-lock.json generated Normal file
View File

@@ -0,0 +1,241 @@
{
"name": "modulesapp",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "modulesapp",
"version": "1.0.0",
"devDependencies": {
"jasmine-node": "^3.0.0"
}
},
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true
},
"node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
}
},
"node_modules/coffeescript": {
"version": "1.12.7",
"resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.12.7.tgz",
"integrity": "sha512-pLXHFxQMPklVoEekowk8b3erNynC+DVJzChxS/LCBBgR6/8AJkHivkm//zbowcfc7BTCAjryuhx6gPqPRfsFoA==",
"dev": true,
"bin": {
"cake": "bin/cake",
"coffee": "bin/coffee"
},
"engines": {
"node": ">=0.8.0"
}
},
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
"dev": true
},
"node_modules/fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
"dev": true
},
"node_modules/gaze": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
"integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
"dev": true,
"dependencies": {
"globule": "^1.0.0"
},
"engines": {
"node": ">= 4.0.0"
}
},
"node_modules/glob": {
"version": "7.1.7",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
"integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"engines": {
"node": "*"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/globule": {
"version": "1.3.4",
"resolved": "https://registry.npmjs.org/globule/-/globule-1.3.4.tgz",
"integrity": "sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==",
"dev": true,
"dependencies": {
"glob": "~7.1.1",
"lodash": "^4.17.21",
"minimatch": "~3.0.2"
},
"engines": {
"node": ">= 0.10"
}
},
"node_modules/growl": {
"version": "1.10.5",
"resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz",
"integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
"dev": true,
"engines": {
"node": ">=4.x"
}
},
"node_modules/inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"dev": true,
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
}
},
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
},
"node_modules/jasmine-growl-reporter": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/jasmine-growl-reporter/-/jasmine-growl-reporter-2.0.0.tgz",
"integrity": "sha512-RYwVfPaGgxQQSHDOt6jQ99/KAkFQ/Fiwg/AzBS+uO9A4UhGhxb7hwXaUUSU/Zs0MxBoFNqmIRC+7P4/+5O3lXg==",
"dev": true,
"dependencies": {
"growl": "^1.10.5"
}
},
"node_modules/jasmine-node": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/jasmine-node/-/jasmine-node-3.0.0.tgz",
"integrity": "sha512-vUa5Q7bQYwHHqi6FlJYndiKqZp+d+c3MKe0QUMwwrC4JRmoRV3zkg0buxB/uQ6qLh0NO34TNstpAnvaZ6xGlAA==",
"dev": true,
"dependencies": {
"coffeescript": "~1.12.7",
"gaze": "~1.1.2",
"jasmine-growl-reporter": "~2.0.0",
"jasmine-reporters": "~1.0.0",
"mkdirp": "~0.3.5",
"requirejs": "~2.3.6",
"underscore": "~1.9.1",
"walkdir": "~0.0.12"
},
"bin": {
"jasmine-node": "bin/jasmine-node"
}
},
"node_modules/jasmine-reporters": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/jasmine-reporters/-/jasmine-reporters-1.0.2.tgz",
"integrity": "sha512-KrMRwzykkIKfkXr5UhCs/4BRJpws4VmNOeHIVKX8EBa9lYysVik3phkKrJCnCUE2lUCZDIA4rAmFrDgw546IzA==",
"dev": true,
"dependencies": {
"mkdirp": "~0.3.5"
}
},
"node_modules/lodash": {
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
},
"node_modules/minimatch": {
"version": "3.0.8",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz",
"integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==",
"dev": true,
"dependencies": {
"brace-expansion": "^1.1.7"
},
"engines": {
"node": "*"
}
},
"node_modules/mkdirp": {
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz",
"integrity": "sha512-8OCq0De/h9ZxseqzCH8Kw/Filf5pF/vMI6+BH7Lu0jXz2pqYCjTAQRolSxRIi+Ax+oCCjlxoJMP0YQ4XlrQNHg==",
"deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)",
"dev": true
},
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
"dev": true,
"dependencies": {
"wrappy": "1"
}
},
"node_modules/path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/requirejs": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
"integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
"dev": true,
"bin": {
"r_js": "bin/r.js",
"r.js": "bin/r.js"
},
"engines": {
"node": ">=0.4.0"
}
},
"node_modules/underscore": {
"version": "1.9.2",
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.9.2.tgz",
"integrity": "sha512-D39qtimx0c1fI3ya1Lnhk3E9nONswSKhnffBI0gME9C99fYOkNi04xs8K6pePLhvl1frbDemkaBQ5ikWllR2HQ==",
"dev": true
},
"node_modules/walkdir": {
"version": "0.0.12",
"resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.12.tgz",
"integrity": "sha512-HFhaD4mMWPzFSqhpyDG48KDdrjfn409YQuVW7ckZYhW4sE87mYtWifdB/+73RA7+p4s4K18n5Jfx1kHthE1gBw==",
"dev": true,
"engines": {
"node": ">=0.6.0"
}
},
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
}
}
}

8
task6/package.json Normal file
View File

@@ -0,0 +1,8 @@
{
"name": "modulesapp",
"version": "1.0.0",
"scripts": {
"start": "node app.js",
"dev": "node app.js Lili 26"
}
}

19
task7/app.js Normal file
View File

@@ -0,0 +1,19 @@
function displaySync(callback) {
callback();
}
console.log('Начало работы программы');
setTimeout(function () {
console.log('timeout 500');
}, 500);
setTimeout(function () {
console.log('timeout 100');
}, 100);
displaySync(function () {
console.log('without timeout');
});
console.log('Завершение работы программы');

13
task8/1/app.js Normal file
View File

@@ -0,0 +1,13 @@
const fs = require('fs');
// асинхронное чтение
fs.readFile('hello.txt', 'utf8', function (error, data) {
console.log('Асинхронное чтение файла');
if (error) throw error; // если возникла ошибка
console.log(data); // выводим считанные данные
});
// синхронное чтение
console.log('Синхронное чтение файла');
let fileContent = fs.readFileSync('hello.txt', 'utf8');
console.log(fileContent);

1
task8/1/hello.txt Normal file
View File

@@ -0,0 +1 @@
Hello Node JS!

13
task8/2/app.js Normal file
View File

@@ -0,0 +1,13 @@
const fs = require('fs');
fs.appendFileSync('hello.txt', 'Привет ми ми ми!');
fs.appendFile('hello.txt', 'Привет МИД!', function (error) {
if (error) throw error; // если возникла ошибка
console.log(
'Запись файла завершена. Содержимое файла:'
);
let data = fs.readFileSync('hello.txt', 'utf8');
console.log(data); // выводим считанные данные
});

1
task8/2/hello.txt Normal file
View File

@@ -0,0 +1 @@
Hello мир!Привет ми ми ми!Привет МИД!Привет ми ми ми!Привет МИД!

3
task8/3/app.js Normal file
View File

@@ -0,0 +1,3 @@
const fs = require('fs');
fs.unlinkSync('hello.txt');

1
task8/3/hello.txt Normal file
View File

@@ -0,0 +1 @@
Hello Node JS!

6
task9/app.js Normal file
View File

@@ -0,0 +1,6 @@
const greeting = require('./greeting');
global.name = 'Eugene';
console.log(date);
console.log(greeting.getMessage())