JavaScript

تعمل لغة البرمجة JavaScript في كل متصفح، وهي التي تجعل صفحات الويب تفاعلية. نبني بها القوائم والنماذج والفلاتر والرسوم المتحركة، ولا نحمّل إلا الشيفرة التي تحتاج إليها كل صفحة ليبقى موقعك سريعًا.

ما هي JavaScript؟

‏JavaScript هي لغة البرمجة الخاصة بالويب، وهي مع HTML وCSS واحدة من ثلاث لغات يفهمها كل متصفح. ابتكرها Brendan Eich في شركة Netscape عام 1995 لإضفاء تفاعل بسيط على صفحات الويب، لكنها اليوم تفعل أكثر من ذلك بكثير، بل تعمل خارج المتصفح أيضًا، على الخوادم مثلًا عبر Node.js.

تعمل JavaScript في المتصفح مع DOM، وهو النموذج الحي الذي يبنيه المتصفح للصفحة: فتضيف المحتوى أو تغيّره أو تخفيه، وتستجيب لأحداث مثل النقر أو الضغط على مفتاح أو التمرير. وعبر Fetch API تجلب البيانات دون إعادة تحميل الصفحة، بينما تقسّم الوحدات (modules) الشيفرة إلى ملفات صغيرة لا تُحمَّل إلا عند الحاجة إليها. وتتيح الكلمتان async وawait انتظار رد الشبكة دون أن تتجمد الصفحة.

يصدر معيار اللغة باسم ECMAScript عن منظمة Ecma International، وقد ظهرت نسخته الأولى عام 1997. وتطوّرها لجنة TC39، التي يعمل فيها صانعو المتصفحات وأعضاء آخرون معًا، بشكل علني، وتصدر منذ عام 2015 نسخة جديدة كل عام. واستخدام JavaScript مجاني ولا يحتاج إلى ترخيص.

أين نستخدم JavaScript

نضيف JavaScript حيث تفيد الزائر فعلًا، ولا نجعلها شرطًا لرؤية المحتوى. وهذه أكثر المهام التي تؤديها:

  • القوائم والتنقل

    قوائم للهاتف وقوائم منسدلة ومبدّلات لغة تُفتح بسلاسة، وتعمل بلوحة المفاتيح، وتنقل التركيز إلى المكان الصحيح، فلا يضيع مستخدمو قارئات الشاشة.

  • نماذج تساعد المستخدم

    نماذج تتحقق من المدخلات أثناء الكتابة، وتشرح الأخطاء بوضوح، وتُرسَل دون إعادة تحميل الصفحة. وتتكرر عمليات التحقق نفسها على الخادم، فتكون البيانات الواصلة موثوقة.

  • الفلترة والبحث

    قوائم مشاريع أو كتالوجات أو وظائف شاغرة يمكن للزوار فلترتها وترتيبها فورًا، ويتحدّث العنوان في المتصفح في الوقت نفسه، فيمكن مشاركة العرض المفلتر أو حفظه في المفضلة.

  • الحركة والأقسام التفاعلية

    قصص تتقدم مع التمرير عبر GSAP، وعروض ثلاثية الأبعاد للمنتجات عبر Three.js، أو حاسبات ومقارنات تجيب عن سؤال الزائر في الصفحة نفسها دون أن ترسله إلى مكان آخر.

لماذا JavaScript؟

  • تعمل على كل جهاز

    يشغّل كل متصفح، على الهاتف أو الجهاز اللوحي أو الحاسوب، لغة JavaScript دون تثبيت أي إضافة أو تطبيق، فتصل الميزات التفاعلية إلى جميع زوارك بالطريقة نفسها.

  • المحتوى أولًا ثم الإضافات

    نتبع مبدأ التحسين التدريجي (progressive enhancement): تعمل النصوص والروابط والنماذج الأساسية بـ HTML وحدها، وتضيف JavaScript فوقها وسائل الراحة. وإذا تعذّر تحميل سكربت على اتصال ضعيف، تواصل الصفحة أداء عملها.

  • ما يلزم فقط

    نضع ميزانية أداء لكل صفحة، ولا نحمّل السكربتات إلا عند الحاجة إليها، كأن يقترب قسم ما من الشاشة. فالشيفرة الأقل تعني تحميلًا أسرع واستجابة أسرع للمس على الهاتف.

كيف نعمل على مشروعك

نحدد في مرحلة التصميم أي أجزاء الصفحة تحتاج إلى التفاعل، وكيف يبدو كل منها قبل تحميل السكربت الخاص به. ثم نبني HTML أولًا، ونضيف JavaScript في وحدات صغيرة، ونختبر كل تفاعل بالفأرة ولوحة المفاتيح وشاشة اللمس.

قبل الإطلاق نراجع ما تحمّله كل صفحة عبر Lighthouse وPageSpeed Insights، ونقتطع ما يتجاوز الميزانية، ونبحث عن الأخطاء في وحدة تحكم المتصفح. ونتأكد كذلك من أن السكربتات الخارجية، مثل وسوم التحليلات، لا تُحمَّل إلا بعد موافقة الزائر على ملفات تعريف الارتباط حيثما يلزم ذلك.

تصميم المواقع وتطويرها

الأسئلة الشائعة

مركز المساعدة
هل تبطئ JavaScript موقعي؟

ليس عندما تُستخدم بعناية. فنحن لا نحمّل إلا الشيفرة التي تحتاج إليها كل صفحة، ونؤجل ما ليس عاجلًا، ونقيس السرعة قبل الإطلاق. والسكربتات الخارجية الثقيلة سبب شائع لبطء الصفحات، لذا نبقيها هي الأخرى تحت السيطرة.

ماذا يحدث إذا حظر متصفح الزائر JavaScript؟

تظل المحتويات والروابط والنماذج الأساسية تعمل، لأننا نبنيها بـ HTML أولًا. أما بعض الإضافات مثل الرسوم المتحركة أو الفلترة الفورية فلا تظهر ببساطة.

هل الشيفرة آمنة؟

نستخدم مكتبات تحظى بصيانة جيدة ونُبقيها محدَّثة، ولا نضع أبدًا كلمات مرور أو مفاتيح سرية في شيفرة تعمل داخل المتصفح. وكل ما هو حساس يُعالَج على الخادم.

هل يمكن إضافة ميزات جديدة لاحقًا؟

نعم. نكتب الشيفرة في وحدات صغيرة ومستقلة، فيمكن إضافة الميزات الجديدة دون إعادة بناء الموقع، ونقدّم لك المشورة بشأن ما يستحق الإضافة منها.

الأداة المناسبة مع الفريق المناسب

لنحدد معًا الأدوات التي تناسب عملك، ثم نعود إليك بخريطة طريق لمشروعك.