إضافة وتعديل الأزواج
جزء من قسم الأساسيات في رحلة Lua على Coddy. الدرس 68 من 90.
لإضافة زوج جديد من المفتاح والقيمة أو تعديل زوج موجود، ما عليك سوى استخدام عامل الإسناد مع تدوين النقطة أو تدوين الأقواس:
local player = {
["name"] = "Alex",
["level"] = 5
}
-- أضف زوجًا جديدًا من مفتاح وقيمة
player.gold = 100
-- عدّل قيمة موجودة
player.level = 6يكمن جمال هذا الأسلوب في أن Lua لا تميّز بين الإضافة والتعديل. إذا لم يكن المفتاح "gold" موجودًا في الجدول، فسيُنشأ بقيمة 100. وإذا كان المفتاح "level" موجودًا بالفعل، فستُحدَّث قيمته إلى 6.
يمكنك استخدام الترميز بالنقطة أو الترميز بالأقواس لتنفيذ هذه العمليات:
-- كلاهما يعمل بالطريقة نفسها
player.class = "Warrior"
player["weapon"] = "Sword"التحدي
سهلأنشئ نظامًا لتطوير الشخصية يوضّح إضافة سمات جديدة وتعديل السمات الموجودة. ابدأ بإنشاء جدول باسم hero يتضمن أزواج المفتاح والقيمة الأولية التالية: يجب إسناد السلسلة "Warrior" إلى ["name"]، والعدد 5 إلى ["level"]، والعدد 120 إلى ["health"].
بعد إنشاء جدول الشخصية الأولي، نفّذ التعديلات التالية: أولًا، أضف زوج مفتاح وقيمة جديدًا ["class"] بقيمة "Paladin" باستخدام صيغة النقطة. بعد ذلك، عدّل قيمة level الموجودة إلى 7 باستخدام صيغة الأقواس. وأخيرًا، أضف زوج مفتاح وقيمة جديدًا آخر ["mana"] بقيمة 80 باستخدام صيغة الأقواس.
تطبع الأسطر الموجودة أسفل التعليمات البرمجية فئة البطل ومستواه، كي تتمكن من التحقق من تغييراتك.
جرّب بنفسك
-- أنشئ الجدول الأولي hero
local hero = {
-- TODO: أضف أزواج المفتاح والقيمة الأولية هنا
}
-- TODO: أضف خصائص جديدة وعدّل الخصائص الموجودة باستخدام ترميز النقطة والأقواس المربعة
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
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 عبر الإنترنت