اذهب إلى المحتوى

لوحة المتصدرين

  1. عمر قره محمد

    عمر قره محمد

    الأعضاء


    • نقاط

      4

    • المساهمات

      4096


  2. حسين مصطفى الحسين

    • نقاط

      1

    • المساهمات

      295


  3. محمد أبو عواد

    محمد أبو عواد

    الأعضاء


    • نقاط

      1

    • المساهمات

      6234


  4. Our World عالمنا

    Our World عالمنا

    الأعضاء


    • نقاط

      1

    • المساهمات

      84


المحتوى الأكثر حصولًا على سمعة جيدة

المحتوى الأعلى تقييمًا في 05/30/22 في كل الموقع

  1. في لغات البرمجة نحتاج في بعض الأحيان إلى إستخدام واجهة interface مثل الموجود في PHP أو Java، أعلم أن JavaScript لديها أصناف Class ولكن عندما حاولت البحث عن الوجهات في جافاسكريبت أو عن كيفية تطبيق هذا الأمر في جافاسكريبت لم أوفق. كيف يمكن تطبيق مبدأ الواجهات interfaces في جافاسكريبت JavaScript؟
    1 نقطة
  2. Buffer هو مخزن مؤقت للبيانات التي في طريقها للعرض او للتخزين والتي يمكن تعديلها بشكل غير متسلسل قبل ان تقرأ بشكل متسلسل. يمكن عمل Buffer بالشكل التالي : char* buffer = new char[length]; ويمكنك حذفه بالشكل التالي : delete[ ] buffer; بينما الفرق بين الـ الفرق بين n\ و endl فهو ان الاولى (n\) تقوم بتخزين البيانات بشكل Buffer حتى الانتهاء منها ثم تقوم بعرضها (اي عمل الـ flushing وهي المسؤولة عن ظهور البيانات على الشاشة او حفظها بالملف) بينما الثانية (endl) تقوم بعمل flushing لكل عنصر على حدى وهذا يجعل من الاولى (n\) افضل من الثانية (endl) ولذلك ينصح دائماً باستخدامها. اقرا ايضا :
    1 نقطة
  3. عندى قاعدة بيانات بالانجليزية؛ والموقع متعدد اللغات(انجليزيى - عربي) ؛ أعرف طريقة ترجمة الكلمات الثابتة ولكن ماذا عن ترجمة البيانات التي تم جلبها من قاعدة البيانات مثل: <?php $stmt=$conn->prepare(" SELECT * from categories "); $stmt->execute(); $cats=$stmt->fetchAll(); ?> <!--start select box categories--> <select class="select-search-Cat" name="category" id="select-cat"> <option value="0">All Categories</option> <?php if(!empty($cats)){ foreach ($cats as $cat) { echo "<option value=".$cat['cat_id'].">" .$cat['name']."</option>"; } } الكلمات بداخل هذا الـ ستكتون بالانجليزية (هي كذلك فى قاعدة البيانات) ؛ كيف اترجمها للعربية هل بطريقة المتغير الواحد <?php $lang['home']='Home'; $lang['categories']='Categories'; $lang['about']='About Us'; أم ماذا؟
    1 نقطة
  4. لن استطيع مساعدتك اذا لم تكن تملك الملفات القابلة للتعديل الخاصة باللعبة. اذا كان الملف الخاص بالاعلانات الذي تحدثت عنه قابل للقراءة والتعديل ربما يمكنك تعديله بحيث تلغي ظهور الإعلانات.
    1 نقطة
  5. اخي قمت بفحص اللعبة ووجدت هذه مشكلة في ال console : YYGGames is not defined كما لاحظتُ ان اللعبة على السيرفر معمول لها build أي انها نسخة production لأن الاكواد صعبة القراءة من قبل المطورين. هل تعمل اللعبة بشكل جيد عندك على الحاسوب؟ أقصد نسخة ال production التي رفعتها على الاستضافة. إذا كانت لا تعمل على حاسوبك اصلا فالمشكلة الحاصلة عندك هي حين الانتقال من نسخة المطور لنسخة ال production أي عند عمل ال build للمشروع. للتاكد من ذلك قم بعمل build للمشروع و جرب تشغيل نسخة ال production على حاسبك، ثم اخبرني بالنتيجة.
    1 نقطة
  6. نعم يوجد اختلاف وهو ان الـ method الأولى هي static methods : User.sayHi = function () { /* ... */ } فتعطي الوظيفة للـ class المسمى User فقط User.sayHi(); // will work fine بينما لن تورث هذه الـ method للأبناء المستنسخين من الـ class المسمى User const omar = new User(); omar.sayHi; // Uncaught TypeError: omar.sayHi is not a function وعلى الصعيد الاخر الـ method الثانية : User.prototype.sayHi = function () { /* ... */ } تعطي الظيفة للأبناء المستنسخين من الـ class المسمى User فقط ولن تستطيع الوصول له من خلال الكود التالي User.sayHi(); // Uncaught TypeError: User.sayHi is not a function ولكن يمكن الوصول له من خلال الكود التالي const omar = new User(); omar.sayHi; // will work fine بعد قول هذا يجب ان تعلم ايضاً انه بإمكانك تعيين الـ static methods بطريقة اخرى وهي إضافة كلمة static قبل اسم ال method : class User{ constructor(name) { this.name = name; } static sayHi() { console.log("hi") } sayHaha(){ console.log("haha") } } User.sayHi(); // hi User.sayHaha(); // Uncaught TypeError: User.sayHaha is not a function const omar = new User() omar.sayHi(); // Uncaught TypeError: omar.sayHi is not a function omar.sayHaha(); // haha عادةً نستخدم ال static methods لعمل وظائق تتعلق بال class بشكل عام. ونورد المثال التالي : إذا اردنا أن نعمل طريقتين لتوليد article من الكلاس المسمى Article. الاولى باستدعائه واعطاء المتغييرات (title, date). والثانية بتوليد article فارغ و date الخاص به هو اليوم. وبالتالي سنحتاج ان نعرف الـ class المسمى Article ونعطيه static method ولتكن createTodays : class Article { constructor(title, date) { this.title = title; this.date = date; } static createTodays() { // class أي انها تشير للـ this = Article لاحظ ان الـ //لن تعمل هنا this.title بمعى ان return new this("Today's digest", new Date()); } } let article = Article.createTodays(); alert( article.title ); // Today's digest لاحظ ان ال this داخل الـ static method تشير لل class وليس للأبناء المنتسخين. وهنا تذكر ان : let article = new Article; article.createTodays(); // Uncaught TypeError: article.createTodays is not a function
    1 نقطة
  7. بالفعل، يوجد إختلاف بين الطريقتين، الطريقة الأولى تستخدم لإضافة تابع صنف class method بينما الطريقة الثانية تستخدم لإضافة تابع نسخة (تابع مثيل) instance method. class User {} User.classMethod = function () { /* ... */ } User.prototype.instanceMethod = function () { /* ... */ } const user1 = new User(); user1.classMethod(); // TypeError: user1.classMethod is not a function User.classMethod(); // correct user1.instanceMethod(); // correct طريقة classMethod في المثال السابق تقوم بإضافة تابع إلى الصنف نفسه وليس إلى الكائنات التي يتم إنشائها من هذا الصنف (user1)، ويمكن تخيلها أنا عبارة عن تابع ساكن static method ، وكان يتم إستعمال هذه الطريقة في ES5 وما قبله من إصدارات، بينما في ES6 تم إضافة الكلمة المفتاحية static لإضافة توابع ساكنة Static Methods إلى الصنف مباشرة: class User { static classMethod () { /* التوابع الساكنة لا يمكنها إستخدام this */ } instanceMethod () { /* يمكن إستخدام this هنا للتعبير عن الكائن object */ } } const user1 = new User(); user1.classMethod(); // TypeError: user1.classMethod is not a function User.classMethod(); // correct user1.instanceMethod(); // correct لمعرفة المزيد عن التوابع الساكنة Static Method والفرق بينها وبين التوابع العادية instance Method أطلع على هذه الإجابة هنا:
    1 نقطة
×
×
  • أضف...