הסרת זוגות באמצעות nil
חלק מהיחידה יסודות במסלול ה-Lua של Coddy. שיעור 69 מתוך 90.
כשמקצים nil למפתח, Lua למעשה מסירה את צמד המפתח-ערך הזה מהטבלה:
local settings = {
["volume"] = 80,
["difficulty"] = "normal",
["music"] = true
}
-- הסר את ההגדרה difficulty
settings.difficulty = nil
-- כעת המפתח difficulty כבר לא קיים בטבלהאפשר להשתמש בסימון נקודה או בסימון סוגריים מרובעים כדי להסיר זוג מפתח-ערך. גם settings.difficulty = nil וגם settings["difficulty"] = nil פועלים בדיוק באותו אופן.
לאחר שמקצים את nil למפתח, המפתח הזה נעלם לחלוטין מהטבלה. אם תנסו לגשת אליו מאוחר יותר, תקבלו nil כתוצאה, בדיוק כאילו המפתח מעולם לא היה קיים.
אתגר
קלצרו מערכת להגדרות משחק שמדגימה הסרה של הגדרות לא רצויות מטבלה בסגנון מילון. התחילו ביצירת טבלה בשם gameConfig עם זוגות המפתח-ערך הבאים: יש להציב את המחרוזת "high" עבור ["graphics"], את המספר 75 עבור ["sound"], את המחרוזת "normal" עבור ["difficulty"], ואת הערך הבוליאני true עבור ["debug"].
לאחר יצירת טבלת ההגדרות הראשונית, הסירו את ההגדרה debug באמצעות הצבת nil בה בעזרת סימון נקודה. לאחר מכן הדפיסו את הגדרת הצליל שנותרה כדי לוודא שהטבלה עדיין מכילה את הערכים האחרים.
נסו בעצמכם
-- TODO: כתבו את הקוד שלכם כאן
-- צרו את הטבלה gameConfig עם זוגות המפתח-ערך הנדרשים
-- הסירו את ההגדרה debug באמצעות סימון נקודה
-- הדפיסו את ההגדרה soundהשיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורים 2: יחסים ולוגיקה
אופרטורי שוויוןאופרטורים יחסייםהאופרטור 'and'האופרטור 'or'האופרטור 'not'הערכה בקצר חשמליערכים אמתיים ושקרייםסיכום – לוגיקה פשוטה10טבלאות חלק 1: בסגנון רשימה
מהי טבלה?יצירת טבלהגישה לאיברים לפי אינדקסשינוי איברים לפי אינדקסאופרטור האורך '#'table.insert()table.remove()סיכום - ניהול חברי החבורה13פרויקט: חנות שיקויים פשוטה
הגדרת הפרויקטהוספת שיקוי2משתנים וסוגי נתונים
מהו משתנה?מספריםמחרוזותערכים בוליאנייםהערך 'nil'הפונקציה type()מוסכמות למתן שמותסיכום – פרופיל דמות5פלט בסיסי
הדפסת ערכים מילולייםהדפסת משתניםהדפסת ערכים מרוביםשילוב מחרוזות ומשתניםהפונקציה tostring()קלטהמרת טיפוסיםסיכום – דוח מצבסיכום – עד 1208יסודות עיבוד מחרוזות
string.len()string.upper ו־string.lowerstring.sub()string.rep()string.find()חזרה – עיצוב שם משתמש11טבלאות 2: בסגנון מילון
זוגות מפתח-ערךיצירת טבלאות בסגנון מילוןגישה באמצעות תחביר סוגריים מרובעיםגישה באמצעות תחביר נקודההוספה ושינוי של זוגותהסרת זוגות באמצעות nilסיכום - מאפייני פריטים3אופרטורים 1: חשבון ושרשור
אופרטורים אריתמטייםאופרטור מודולואופרטור חזקהשרשור מחרוזותקדימות אופרטוריםסיכום – חישובים פשוטים9יסודות הפונקציות
הגדרת פונקציהקריאה לפונקציהפונקציות עם פרמטריםפונקציות עם כמה פרמטריםהפקודה 'return'סיכום – מחשבון שטחתרגלו בעצמכם: קומפיילר Lua אונליין