Встречается на собеседованиях • сегодня
Как пошарить код между двумя участками кода без window
Для шаринга кода между участками без использования `window` можно использовать модули (ES6) или паттерны вроде Pub/Sub.
**1. ES6 модули:**
```javascript
// shared.js
export const sharedValue = 'Hello';
// file1.js
import { sharedValue } from './shared.js';
console.log(sharedValue); // 'Hello'
// file2.js
import { sharedValue } from './shared.js';
console.log(sharedValue); // 'Hello'
```
**2. Event Bus (Pub/Sub):**
```javascript
// eventBus.js
const listeners = {};
export const EventBus = {
on(event, callback) { listeners[event] = callback; },
emit(event, data) { listeners[event]?.(data); }
};
// componentA.js
EventBus.on('update', (data) => console.log(data));
// componentB.js
EventBus.emit('update', 'Shared data');
```
**3. Контекст (React):**
```jsx
const SharedContext = React.createContext();
// Provider
// Consumer (ChildA/ChildB)
const { data } = useContext(SharedContext);
```

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы