ch
Feedback
JavaScript

JavaScript

前往频道在 Telegram

A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript 🚀 Don't miss our Quizzes! Let's chat: @nairihar

显示更多

📈 Telegram 频道 JavaScript 的分析概览

频道 JavaScript (@javascript) 英语 语言赛道中的 是活跃参与者。目前社区聚集了 31 138 名订阅者,在 技术与应用 类别中位列第 4 164,并在 印度 地区排名第 12 801

📊 受众指标与增长动态

невідомо 创建以来,项目保持高速增长,吸引了 31 138 名订阅者。

根据 21 九月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -118,过去 24 小时变化为 -7,整体触达仍然可观。

  • 认证状态: 未认证
  • 互动率 (ER): 平均受众互动率为 6.16%。内容发布后 24 小时内通常能获得 2.24% 的反应,占订阅者总量。
  • 帖子覆盖: 每篇帖子平均可获得 1 917 次浏览,首日通常累积 697 次浏览。
  • 互动与反馈: 受众积极参与,单帖平均反应数为 4
  • 主题关注点: 内容集中在 javascript, console.log(gen.next().value, processdata, remix, acc 等核心主题上。

📝 描述与内容策略

作者将该频道定位为表达主观观点的平台:
A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript 🚀 Don't miss our Quizzes! Let's chat: @nairihar

凭借高频更新(最新数据采集于 22 九月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。

31 138
订阅者
-724 小时
-517 天
-11830 天
帖子存档
\"; const sanitized = userInput.replace(/]…","articleBody":"CHALLENGE\n\nconst userInput = \"\";\nconst sanitized = userInput.replace(/]*>.*?<\\/script>/gi, '');\n\nconst users = new Map();\nusers.set('admin', { password: 'secret123', role: 'admin' });\nusers.set('guest', { password: 'guest', role: 'user' });\n\nfunction authenticate(username, password) {\n const user = users.get(username);\n return user && user.password === password ? user.role : null;\n}\n\nconst role1 = authenticate('admin', 'secret123');\nconst role2 = authenticate('guest', 'wrong');\nconst role3 = authenticate('hacker', 'secret123');\n\nconsole.log(sanitized);\nconsole.log(role1, role2, role3);","datePublished":"2025-09-02T06:34:29Z","dateModified":"2025-09-02T06:34:29Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":2932},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":8},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":4}]}},{"@type":"ListItem","position":10,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2600","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2600","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2600","headline":"JavaScript","datePublished":"2025-09-01T06:34:39Z","dateModified":"2025-09-01T06:34:39Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":3010},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":6}]}},{"@type":"ListItem","position":11,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2599","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2599","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2599","headline":"CHALLENGE class StateMachine { constructor() { this.state = 'idle'; this.transitions = { idle: { start: 'runn…","articleBody":"CHALLENGE\n\nclass StateMachine {\n constructor() {\n this.state = 'idle';\n this.transitions = {\n idle: { start: 'running' },\n running: { pause: 'paused', stop: 'idle' },\n paused: { resume: 'running', stop: 'idle' }\n };\n }\n \n transition(action) {\n const validTransitions = this.transitions[this.state];\n if (validTransitions && validTransitions[action]) {\n this.state = validTransitions[action];\n return true;\n }\n return false;\n }\n}\n\nconst machine = new StateMachine();\nconsole.log(machine.transition('pause'));\nconsole.log(machine.state);\nconsole.log(machine.transition('start'));\nconsole.log(machine.state);","datePublished":"2025-09-01T06:34:39Z","dateModified":"2025-09-01T06:34:39Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":3051},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":3},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":1}]}},{"@type":"ListItem","position":12,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2598","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2598","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2598","headline":"JavaScript","datePublished":"2025-08-31T06:31:29Z","dateModified":"2025-08-31T06:31:29Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":2884},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":9}]}},{"@type":"ListItem","position":13,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2597","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2597","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2597","headline":"CHALLENGE const obj = { a: 1, b: { c: 2 } }; const frozen = Object.freeze(obj); frozen.a = 99; frozen.b.c = 8…","articleBody":"CHALLENGE\n\nconst obj = { a: 1, b: { c: 2 } };\nconst frozen = Object.freeze(obj);\nfrozen.a = 99;\nfrozen.b.c = 88;\nfrozen.d = 77;\n\nconst sealed = Object.seal({ x: 10, y: 20 });\nsealed.x = 30;\nsealed.z = 40;\ndelete sealed.y;\n\nconsole.log(obj.a, obj.b.c, obj.d);\nconsole.log(sealed.x, sealed.y, sealed.z);","datePublished":"2025-08-31T06:31:29Z","dateModified":"2025-08-31T06:31:29Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":3038},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":1},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":3}]}},{"@type":"ListItem","position":14,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2596","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2596","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2596","headline":"😈 Sam Rose has put together a fantastic illustrated introduction to Big O notation, along with JavaScript exa…","articleBody":"😈 Sam Rose has put together a fantastic illustrated introduction to Big O notation, along with JavaScript examples. If you've ever wondered what O(1), O(log n), etc. mean, this is a great primer.","datePublished":"2025-08-30T13:01:17Z","dateModified":"2025-08-30T13:01:17Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":3317},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":13},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":11}]}},{"@type":"ListItem","position":15,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2595","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2595","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2595","headline":"JavaScript","datePublished":"2025-08-30T06:32:03Z","dateModified":"2025-08-30T06:32:03Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":3214},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":3},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":2}]}},{"@type":"ListItem","position":16,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2594","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2594","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2594","headline":"CHALLENGE const arr = new Array(1000000).fill(0).map((_, i) => i); const results = []; function method1() { r…","articleBody":"CHALLENGE\n\nconst arr = new Array(1000000).fill(0).map((_, i) => i);\nconst results = [];\n\nfunction method1() {\n return arr.filter(x => x % 2 === 0).map(x => x * 2).slice(0, 3);\n}\n\nfunction method2() {\n const result = [];\n for (let i = 0; i < arr.length && result.length < 3; i++) {\n if (arr[i] % 2 === 0) {\n result.push(arr[i] * 2);\n }\n }\n return result;\n}\n\nconsole.log(method1().join(','));\nconsole.log(method2().join(','));","datePublished":"2025-08-30T06:32:03Z","dateModified":"2025-08-30T06:32:03Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":3095},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":3}]}},{"@type":"ListItem","position":17,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2593","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2593","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2593","headline":"👑 Cronicle: Cron with a Web Front End Describing itself as ‘a fancy cron replacement’, Cronicle is a distribu…","articleBody":"👑 Cronicle: Cron with a Web Front End\n\nDescribing itself as ‘a fancy cron replacement’, Cronicle is a distributed task scheduler and runner, built around a Node app with a web based UI. GitHub repo.\n\nJoseph Huckaby","datePublished":"2025-08-29T13:01:37Z","dateModified":"2025-08-29T13:01:37Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":2673},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":11},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":9}]}},{"@type":"ListItem","position":18,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2592","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2592","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2592","headline":"JavaScript","datePublished":"2025-08-29T06:31:01Z","dateModified":"2025-08-29T06:31:01Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":2997},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":11},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":3}]}},{"@type":"ListItem","position":19,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2591","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2591","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2591","headline":"CHALLENGE async function fetchData() { console.log('1'); return Promise.resolve('data'); } async function pro…","articleBody":"CHALLENGE\n\nasync function fetchData() {\n console.log('1');\n return Promise.resolve('data');\n}\n\nasync function processData() {\n console.log('2');\n const result = await fetchData();\n console.log('3');\n return result;\n}\n\nconsole.log('4');\nprocessData().then(() => console.log('5'));\nconsole.log('6');","datePublished":"2025-08-29T06:31:01Z","dateModified":"2025-08-29T06:31:01Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":2992},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":2}]}},{"@type":"ListItem","position":20,"item":{"@type":"SocialMediaPosting","@id":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2590","url":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2590","mainEntityOfPage":"https://telemetr.io/ch/channels/1924414526-javascript/posts/2590","headline":"🔥 Deno vs Oracle: The ugly custody battle for JavaScript… Fireship","articleBody":"🔥 Deno vs Oracle: The ugly custody battle for JavaScript…\n\nFireship","datePublished":"2025-08-28T13:00:29Z","dateModified":"2025-08-28T13:00:29Z","author":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"publisher":{"@type":"Organization","name":"JavaScript","url":"https://telemetr.io/ch/channels/1924414526-javascript","image":"https://img.tlmtr.io/c/26eE7Y/5370661389250710069?ty=x"},"commentCount":0,"interactionStatistic":[{"@type":"InteractionCounter","interactionType":"https://schema.org/ViewAction","userInteractionCount":2951},{"@type":"InteractionCounter","interactionType":"https://schema.org/LikeAction","userInteractionCount":10},{"@type":"InteractionCounter","interactionType":"https://schema.org/ShareAction","userInteractionCount":1}]}}]}
What is the output?
Anonymous voting

CHALLENGE
function processData() {
  try {
    console.log('start');
    throw new Error('oops');
    console.log('after throw');
  } catch (e) {
    console.log('catch');
    return 'caught';
  } finally {
    console.log('finally');
  }
  console.log('end');
}

const result = processData();
console.log(result);

🤩 Cornerstone3D 4.0: Build Web-Based Medical Imaging Apps A set of JavaScript libraries to build things like this 3D CT scan
🤩 Cornerstone3D 4.0: Build Web-Based Medical Imaging Apps A set of JavaScript libraries to build things like this 3D CT scan viewer, PET-CT scan viewer, and much more besides. There’s a lot to this project, along with numerous tutorials. Open Health Imaging Foundation

What is the output?
Anonymous voting

CHALLENGE
const obj = {
  name: 'Sarah',
  getName() { return this.name; },
  getNameArrow: () => this.name
};

const { getName, getNameArrow } = obj;
const boundGetName = obj.getName.bind(obj);

console.log(getName());
console.log(getNameArrow());
console.log(boundGetName());
console.log(obj.getName());
console.log(obj.getNameArrow());

📸 The Hidden Costs of Angular Updates. 📅 September 3, 4 PM UTC 🎙 Host: Armen Vardanyan 🎤 Guest: Gérôme Grignon We’ll cove
📸 The Hidden Costs of Angular Updates. 📅 September 3, 4 PM UTC 🎙 Host: Armen Vardanyan 🎤 Guest: Gérôme Grignon We’ll cover: - What ng update does well - Where the hidden costs appear in real projects - Refactoring & dependency pitfalls - How upgrades affect teams & long-term maintainability Check the Linkedin post to learn more.

What is the output?
Anonymous voting

CHALLENGE
const userInput = "<script>alert('xss')</script>";
const sanitized = userInput.replace(/<script[^>]*>.*?<\/script>/gi, '');

const users = new Map();
users.set('admin', { password: 'secret123', role: 'admin' });
users.set('guest', { password: 'guest', role: 'user' });

function authenticate(username, password) {
  const user = users.get(username);
  return user && user.password === password ? user.role : null;
}

const role1 = authenticate('admin', 'secret123');
const role2 = authenticate('guest', 'wrong');
const role3 = authenticate('hacker', 'secret123');

console.log(sanitized);
console.log(role1, role2, role3);

What is the output?
Anonymous voting

CHALLENGE
class StateMachine {
  constructor() {
    this.state = 'idle';
    this.transitions = {
      idle: { start: 'running' },
      running: { pause: 'paused', stop: 'idle' },
      paused: { resume: 'running', stop: 'idle' }
    };
  }
  
  transition(action) {
    const validTransitions = this.transitions[this.state];
    if (validTransitions && validTransitions[action]) {
      this.state = validTransitions[action];
      return true;
    }
    return false;
  }
}

const machine = new StateMachine();
console.log(machine.transition('pause'));
console.log(machine.state);
console.log(machine.transition('start'));
console.log(machine.state);

What is the output?
Anonymous voting

CHALLENGE
const obj = { a: 1, b: { c: 2 } };
const frozen = Object.freeze(obj);
frozen.a = 99;
frozen.b.c = 88;
frozen.d = 77;

const sealed = Object.seal({ x: 10, y: 20 });
sealed.x = 30;
sealed.z = 40;
delete sealed.y;

console.log(obj.a, obj.b.c, obj.d);
console.log(sealed.x, sealed.y, sealed.z);

😈 Sam Rose has put together a fantastic illustrated introduction to Big O notation, along with JavaScript examples. If you'v
😈 Sam Rose has put together a fantastic illustrated introduction to Big O notation, along with JavaScript examples. If you've ever wondered what O(1), O(log n), etc. mean, this is a great primer.

What is the output?
Anonymous voting

CHALLENGE
const arr = new Array(1000000).fill(0).map((_, i) => i);
const results = [];

function method1() {
  return arr.filter(x => x % 2 === 0).map(x => x * 2).slice(0, 3);
}

function method2() {
  const result = [];
  for (let i = 0; i < arr.length && result.length < 3; i++) {
    if (arr[i] % 2 === 0) {
      result.push(arr[i] * 2);
    }
  }
  return result;
}

console.log(method1().join(','));
console.log(method2().join(','));

👑 Cronicle: Cron with a Web Front End Describing itself as ‘a fancy cron replacement’, Cronicle is a distributed task schedu
👑 Cronicle: Cron with a Web Front End Describing itself as ‘a fancy cron replacement’, Cronicle is a distributed task scheduler and runner, built around a Node app with a web based UI. GitHub repo. Joseph Huckaby

What is the output?
Anonymous voting

CHALLENGE
async function fetchData() {
  console.log('1');
  return Promise.resolve('data');
}

async function processData() {
  console.log('2');
  const result = await fetchData();
  console.log('3');
  return result;
}

console.log('4');
processData().then(() => console.log('5'));
console.log('6');