摘要:
前面说过__index,与__index不同的是,__newindex用于更新,而__index用于查找。当对一个table不存在的字段进行赋值时,就会查找__newindex元方法。如果存在这个元方法,就执行它。如果这个元方法是table,那么久对此table赋值,而不是原table。window... 阅读全文
摘要:
我们知道当访问table里一个不存在的字段时会返回nil,这不完全正确。实际上,当我们访问一个不存在的字段时,会去查找一个__index的元方法。如果没有这个元方法,那么返回nil,如果有,那么就由这个元方法提供最后的结果。 举个栗子: window = {}window.prototy... 阅读全文