从字符串加载一个表 (table.load_string)

声明

关联表 = table.load_string(表文本)

参数及返回值

  • 表文本
    • 文本型,表的树形结构的文本,只能包含静态数据,不能包含任何动态代码
  • 关联表
    • 表型 或 nil,加载成功返回表结构,失败返回 nil

说明

这个函数在 1.1.2-6 版以上方可使用
将一个树形结构文本描述转换成一个表对象
一定意义上,table.load_stringtable.deep_print 的反函数 (这取决有没有循环引用或非表引用类型)
它与 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

results matching ""

    No results matching ""