编写一个javascript元循环求值器的方法(2)

class Scope implements IScope { public readonly variables: EmptyObj = Object.create(null); constructor( private readonly scopeType: ScopeType, private parent: Scope = null, public readonly shared = false, ) { } }

我们构造一个类来模拟 scope。可以看到,Scope 类包含了以下4个属性:

variables:当前环境下存在的变量

scopeType:当前环境的type

parent:当前环境的父环境

shared:有些时候不需要重复构造子环境,故用此标识

接下来我们看下该如何在环境中声明变量

首先构造一个类来模拟变量

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/9b8237ff8cecb49764d4ba2aee9d2380.html