所有的前提,设置tab的元表为meta,当所查到的值或者所赋值的值不存在时,往元表meta去检查__index或者__newindex是否存在。
__index:当需要调用某个当前表内不存在的函数或者变量时,往元表去查找并且调用它。
rawget:让__index失效,获取到真实值。这里的意义在于,由于元表的存在,要取得真实值需要通过这个方法。
__newindex :当需要赋值某个当前表内不存在的函数或者变量时,往元表去赋值。
rawset:当存在元表时,__newindex存在,如果不使用rawset给那个不存在的值赋值,会进行__newindex的无限赋值,死循环。