الاستيراد باستخدام import
جزء من قسم Object Oriented Programming في رحلة JavaScript على Coddy — الدرس 9 من 56.
بعد تصدير الوظائف من وحدة نمطية (module)، نحتاج إلى استيرادها لاستخدامها في ملف آخر. تسمح لنا جملة import بجلب القيم المصدرة من وحدات نمطية أخرى.
استيراد تصدير مسمى:
// استيراد دالة محددة من وحدة نمطية
import { greet } from './greeting.js';
// الآن يمكننا استخدام دالة greet
greet('John'); // المخرجات: Hello, John!يمكنك استيراد عدة صادرات مسماة في وقت واحد:
// استيراد صادرات متعددة
import { greet, farewell } from './greeting.js';
greet('John'); // المخرجات: Hello, John!
farewell('John'); // المخرجات: Goodbye, John!استيراد تصدير افتراضي (default export):
// استيراد تصدير افتراضي (لا حاجة للأقواس المتعرجة)
// استخدم هذا عندما يحتوي الملف الآخر على: export default functionName
import Person from './person.js';
// إنشاء كائن Person جديد
const john = new Person('John');التحدي
سهلأنت تقوم ببناء نموذج تسجيل. لديك ملف validation-utils.js يحتوي على وظائف مفيدة للتحقق من صحة البريد الإلكتروني.
مهمتك:
- استورد دالة
validateEmailفيmain.js(هي التصدير المسمى "named export"، وليست التصدير الافتراضي "default export") - استدعِ الدالة ومرر عنوان البريد الإلكتروني user@example.com
- اطبع النتائج باستخدام
console.log
ورقة مرجعية
استخدم عبارة import لجلب القيم المصدرة من وحدات (modules) أخرى.
استيراد تصدير مسمى (named export):
import { greet } from './greeting.js';
greet('John'); // المخرجات: Hello, John!استيراد عدة تصديرات مسماة:
import { greet, farewell } from './greeting.js';
greet('John'); // المخرجات: Hello, John!
farewell('John'); // المخرجات: Goodbye, John!استيراد تصدير افتراضي (لا حاجة للأقواس المتعرجة):
import Person from './person.js';
const john = new Person('John');جرّب بنفسك
// TODO: استورد دالة validateEmail هنا (هي التصدير المسمى)
// TODO: استدعِ الدالة ومرر عنوان البريد الإلكتروني user@example.com واطبع النتائج باستخدام console.logيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Object Oriented Programming
1الكائنات والكلمة المفتاحية this
مراجعة سريعة: الكائناتإضافة Methods إلى الكائناتفهم الكلمة المفتاحية thisConstructor Functionsالكلمة المفتاحية newتحدي المراجعة7الوراثة والكلمة المفتاحية extends
الوراثةعلاقة "is-a"الكلمة المفتاحية extendsالدالة super()وراثة الخصائص والوظائفتحدي المراجعة2تنظيم الكود
ما هي الـ Modules؟التصدير باستخدام exportالاستيراد باستخدام importالـ Default مقابل الـ Named Exports8تنظيم كود OOP
تنظيم الـ Classes في Modules11مشروع: مصيّر الأشكال
إعداد: فئة Shape والتصديروراثة فئة Circle