class Variable implements IVariable { constructor( private kind: Kind, private value: any ){ } $get() { return this.value } $set(value: any) { if (this.kind === 'const') { return false } this.value = value; return true; } }
这个类中有两个属性和两个方法
kind 用于标识该变量是通过 var、let 还是 const 声明
value 表示该变量的值
$get 和 $set 分别用于获取和设置该变量的值
有了 Variable 类之后,我们就可以编写 Scope 类中的声明变量的方法了。
let 和 const 的声明方式基本一样