Modul nomlar fazosi
Modul nomlar fazosi obyekti
Sintaksisdan foydalanganda:
import * as name from "module";
JavaScript modulning nomlar fazosi obyektini yaratadi.
Bu moduldan barcha eksport qilingan ulanishlarni o‘z ichiga olgan o‘zgarmas obyekt.
Misol
The math module namespace object bundles all the exports (PI, add, multiply):
// math_module.js
export const PI = 3.14159;
export function add(a, b) {
return a + b;
}
export function multiply(a, b) {
return a * b;
}
Math_module.js faylini nom maydoni obyektiga import qiling:
import * as math from "./math_module.js";
// Now you can use the math namespace object:
let myPi = math.PI
let result1 = math.add(2, 3));
let result2 = math.multiply(2, 3));
Modul nomlar fazosini qo‘llab-quvvatlash
Modul nomlari maydonini qo‘llab-quvvatlash moduldan barcha eksportlarni yagona nom maydoni obyektiga import qilish imkonini beruvchi mexanizmga ishora qiladi.
Modul nomlar fazosi imkoniyatlari
| Xususiyat | Tavsif |
|---|---|
| Namespace | Moduldagi barcha eksportlarni o‘z ichiga olgan maxsus obyekt |
| Sintaksis | import * as name from module |
| Purpose | Modul eksportlarini xavfsiz tartibga solish, ularga murojaat qilish va havola qilish |
| Faqat o‘qish uchun | Siz eksportga kirishingiz mumkin, lekin ularni qayta tayinlay olmaysiz |
| Live Binding | Agar modulda eksport qilingan qiymat o‘zgarsa, nom maydoni avtomatik ravishda bu o‘zgarishni aks ettiradi |
| Enumerable | Uning xossalari sanab o‘tilgan va nomli eksportga mos keladi |
| prototip | Nomlar maydoni prototipi bo‘lmagan oddiy obyektdir (Object.getPrototypeOf(math) === null). |
Tegishli sintaksis
import { add } from "./math_module.js";
import math from "./math_module.js";
import * as math from "./math_module.js";
Modul nomlar fazosini eksport qilish
Modul nom maydonini eksport qilish boshqa moduldan import qilingan modul nom maydoni obyektini eksport qilishni anglatadi.
Nomlar fazosini eksport qilish
Odatda, modulning barcha eksportlarini modul nom maydoni obyektiga quyidagi kabi import qilasiz:
Misol
import * as math from "./math_module.js";
let myPi = math.PI;
let result = math.add(2, 3);
The math module namespace object bundles all the exports (PI, add, multiply):
// math_module.js
export const PI = 3.14159;
export function add(a, b) {
return a + b;
}
export function multiply(a, b) {
return a * b;
}
Modul nom maydoni eksporti bilan siz o‘zingizning modulingizdan ushbu nom maydonini avval import qilmasdan qayta eksport qilishingiz mumkin:
Now, you can create a new module that re-exports this whole namespace:utilities.js
export * from "./math_module.js";
Sintaksisga umumiy nazar
| Sintaksis | Natija |
|---|---|
| export * from "module" | Barcha nomlangan eksportlarni alohida-alohida qayta eksport qilish (nomlar fazosi sifatida emas) |
| export * as name from "module" | Barcha eksportlarni bitta nomlar fazosi ostida guruhlab qayta eksport qilish |
| export { name } from "module" | Re-export specific exports |
Agregator skriptlar
Agregator skripti faqat boshqa modullardan elementlarni import qilish va qayta eksport qilish uchun foydalaniladigan skriptdir.
Yuqori modulingizni ko‘plab import operatorlari bilan to‘ldirish o‘rniga, barchasini bajarish uchun bitta agregator skriptidan foydalanishingiz mumkin.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
