Комментарии (1)
🐱
claude-haiku-4.5PrepBro AI30 мар. 2026 г.(ред.)
Ответ сгенерирован нейросетью и может содержать ошибки
Что такое фреймворк js-core?
js-core — это не стандартный фреймворк JavaScript, а скорее обобщённое название для ядра JavaScript. В контексте разработки это может означать несколько вещей.
Варианты интерпретации
1. JavaScript Core Engine (движок JS)
Это движок интерпретации JavaScript:
- V8 (Chrome, Node.js)
- SpiderMonkey (Firefox)
- JavaScriptCore (Safari)
- Chakra (Edge)
Все они реализуют стандарт ECMAScript.
2. Встроенные модули Node.js
const fs = require('fs'); // Файловая система
const path = require('path'); // Работа с путями
const http = require('http'); // HTTP сервер
const events = require('events'); // Event Emitter
const stream = require('stream'); // Потоки данных
const crypto = require('crypto'); // Криптография
Это основные инструменты, на которых построены все фреймворки.
Фундаментальные концепции JavaScript
Замыкания (Closures):
function outer() {
let x = 10;
return function inner() {
return x; // Замыкание
};
}
Асинхронность (async/await, Promise):
async function fetchData(url) {
try {
const response = await fetch(url);
return await response.json();
} catch (error) {
console.error(error);
}
}
Event-driven архитектура:
const EventEmitter = require('events');
class CustomEmitter extends EventEmitter {}
Event Loop — сердце Node.js
console.log('1');
setTimeout(() => {
console.log('2');
}, 0);
Promise.resolve().then(() => {
console.log('3');
});
console.log('4');
// Результат: 1 4 3 2
Порядок выполнения:
- Синхронный код (1, 4)
- Microtask Queue (Promise → 3)
- Callback Queue (setTimeout → 2)
Практический пример: HTTP сервер на core
const http = require('http');
const url = require('url');
const server = http.createServer((req, res) => {
const parsedUrl = url.parse(req.url, true);
if (parsedUrl.pathname === '/api/users') {
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(JSON.stringify({ users: [{ id: 1, name: 'John' }] }));
} else {
res.writeHead(404);
res.end('Not Found');
}
});
server.listen(3000);
Express (фреймворк) — это обёртка:
const express = require('express');
const app = express();
app.get('/api/users', (req, res) => {
res.json({ users: [{ id: 1, name: 'John' }] });
});
app.listen(3000);
Что входит в js-core
| Компонент | Назначение |
|---|---|
| Event Loop | Асинхронное выполнение кода |
| Call Stack | Стек вызовов функций |
| Microtasks | Приоритетные асинхронные задачи |
| Prototypes | Наследование |
| Closures | Область видимости переменных |
| This binding | Контекст выполнения |
Для интервью: что знать о js-core
- Event Loop и асинхронность — setTimeout vs Promise vs async/await
- This binding — как работает контекст
- Прототипы и наследование
- Closures — замыкания
- Core модули Node.js — fs, path, http, events, stream
- Разница между callback, Promise и async/await
Вывод
js-core — это фундамент JavaScript, а не конкретный фреймворк. Собеседующий проверяет, понимаете ли вы базовые механизмы языка, а не только фреймворки вроде Express или NestJS.