Эҷоди модули ES дар JavaScript

Ҳоло ба омӯзиши модулҳо шурӯъ мекунем. Ҳар як модул бояд файли ҷудогона бошад. Тағирёбандаҳо ва функсияҳое, ки мо дар ин файл ҷойгир мекунем, аз берун ба файл дастрас нахоҳанд буд. Ин афзалиятҳои модулҳо мебошанд - мо метавонем ҳар гуна тағирёбандаҳо ва функсияҳо эҷод кунем, бидуни тарс аз мубориза бо номҳо аз китобхонаҳои дигар.

Он тағирёбандаҳо ва функсияҳо, ки мо мехоҳем аз берун намоён созем, бояд бо истифода аз фармони export содир кунем.

Биёед дар мисол санҷем. Модули math-ро эҷод мекунем, ки кӯмаки функсияҳоро барои амалҳои математикӣ пешкаш мекунад.

Модули худро дар файли math.js ҷойгир кунем ва дар он чанд функсия созем:

src/math.jsfunction root2(num) {
  return round(num ** (1 / 2));
}
function root3(num) {
  return round(num ** (1 / 3));
}
function round(num) {
  return num.toFixed(2);
}

Бигзор функсияҳо барои баровардани реша асосӣ бошанд ва ба берун содир карда шаванд, ва функсия барои гирд кардан - ёварӣ бошад ва содир карда нашавад. Биёед ба функсияҳои зарурӣ фармони export-ро нависем:

src/math.jsexport function root2(num) {
  return round(num ** (1 / 2));
}
export function root3(num) {
  return round(num ** (1 / 3));
}
function round(num) {
  return num.toFixed(2);
}
Задание 1

Модуле эҷод кунед, ки дар бар гирад функсияи pow2 барои ба дараҷаи дуюм расонидани адад, pow3 барои расонидан ба сеюм ва pow4 барои расонидан ба чаҳорум.