إضافة وتعديل الأزواج
جزء من قسم الأساسيات في رحلة Lua على Coddy. الدرس 68 من 90.
لإضافة زوج جديد من key-value أو modify existing، ما عليك سوى استخدام معامل الإسناد مع dot notation أو bracket notation:
local player = {
["name"] = "Alex",
["level"] = 5
}
-- أضف زوج مفتاح-قيمة جديد
player.gold = 100
-- عدّل قيمة موجودة
player.level = 6جمال هذا الأسلوب هو أن Lua لا يميّز بين الإضافة والتعديل. إذا لم يكن "gold" موجودًا في table، فسيتم إنشاؤه بالقيمة 100. وإذا كان "level" موجودًا بالفعل، فسيتم تحديث قيمته إلى 6.
يمكنك استخدام إما dot notation أو bracket notation لهذه العمليات:
-- كلاهما يعملان بنفس الطريقة
player.class = "Warrior"
player["weapon"] = "Sword"التحدي
سهلأنشئ نظامًا لتقدّم character يوضّح كلاً من Add attributes جديدة وModify ones existing. ابدأ بإنشاء table باسم hero مع أزواج key-value التالية في الحالة initial: يجب إسناد السلسلة النصية "Warrior" إلى ["name"]، ويجب إسناد الرقم 5 إلى ["level"]، ويجب إسناد الرقم 120 إلى ["health"].
بعد إنشاء table character initial، نفّذ التعديلات التالية: أولاً، أضف pair key-value جديدة ["class"] بالقيمة "Paladin" using dot notation. بعد ذلك، عدّل قيمة level existing إلى 7 using bracket notation. وأخيرًا، أضف pair key-value جديدة أخرى ["mana"] بالقيمة 80 using bracket notation.
بعد اكتمال جميع التعديلات، اطبع class الخاصة بـ hero وlevel updated للتحقق من التغييرات.
جرّب بنفسك
-- إنشاء جدول البطل الأولي
local hero = {
-- TODO: أضف أزواج المفتاح-القيمة الأولية هنا
}
-- TODO: أضف سمات جديدة وعدّل الموجودة باستخدام ترميز النقطة والأقواس
-- إخراج فئة البطل والمستوى المحدّث
print(hero.class)
print(hero.level)يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات 2: العمليات العلائقية والمنطقية
معاملات التساويالمعاملات العلائقيةالمعامل 'and'المعامل 'or'المعامل 'not'التقييم قصير الدائرةقيم Truthy و Falsyمراجعة - المنطق البسيط10الجداول الجزء 1: نمط القائمة
ما هو الجدول؟إنشاء جدولالوصول إلى العناصر عبر الفهرستعديل العناصر عبر الفهرسمعامل الطول '#'table.insert()table.remove()ملخص - إدارة أعضاء الفريق13مشروع: متجر جرعات بسيط
إعداد المشروعإضافة جرعة2المتغيرات وأنواع البيانات
ما هو المتغير؟الأرقامالسلاسل النصيةالقيم المنطقيةالقيمة 'nil'الدالة type()قواعد التسميةمراجعة - ملف الشخصية5الإخراج الأساسي
طباعة القيم الحرفيةطباعة المتغيراتطباعة قيم متعددةدمج النصوص والمتغيراتدالة tostring()الإدخال (Input)التحويل (Cast)مراجعة - تقرير الحالةمراجعة - حتى 1208أساسيات معالجة النصوص
string.len()string.upper و string.lowerstring.sub()string.rep()string.find()مراجعة - تنسيق اسم المستخدم11الجداول 2: بأسلوب القاموس
أزواج (مفتاح-قيمة)إنشاء جداول بأسلوب القاموسالوصول - تدوين الأقواسالوصول بتدوين النقطةإضافة وتعديل الأزواجإزالة الأزواج باستخدام nilمراجعة - خصائص العناصر3المعاملات 1: العمليات الحسابية والدمج
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسدمج النصوصأولوية المعاملاتملخص - حسابات بسيطة6مشروع: عرض إحصائيات الشخصية
رسالة ترحيبتعريف إحصائيات الشخصية9أساسيات الدوال
تعريف دالةاستدعاء دالةدوال مع معاملاتدوال بمعاملات متعددةجملة 'return'مراجعة - حاسبة المساحة12أساسيات الحلقات التكرارية
حلقة whileحلقة repeat-untilحلقة for الرقميةحلقة for مع خطوةجملة 'break'مراجعة - العد التنازليتدرّب بنفسك: مترجم Lua عبر الإنترنت