從序列化文字載入一個表 (table.load_string)
聲明
關聯表 = table.load_string(表文字)
參數
- 表文字
文字型,表的序列化樹形結構的文字,只能包含靜態資料,不能包含任何動態代碼
回傳值
- 關聯表
表型 或 nil,載入成功返回表結構,失敗返回 nil
說明
將樹形結構的文字描述轉換為表物件
一定程度上,table.load_string 可視為 table.deep_dump 的反函式(實際可用程度取決於是否存在循環引用或非表型引用類型)
與 load 不同:該函式不會執行文字中的代碼,只讀取其中的靜態資料
下面的範例含有可執行代碼,運行後b為 nil(代碼不會執行)
b = table.load_string[[ {
a = os.execute('reboot'), -- 這裡的代碼將不會運行,並且會返回 nil
} ]]
範例
local t = table.load_string[[ {
a = 1,
b = 2,
c = 3,
} ]]
sys.alert(t.b)
注:上述代碼中使用了非本章函式 sys.alert