在 javascript 中寻找一个结构,其工作方式类似于基于堆栈的析构函数或 c++ 中的本地对象,例如
#include <stdio.h>
class M {
public:
int cnt;
M() {cnt=0;}
void inc() {cnt++;}
~M() {printf ("Count is %d\n", cnt);}
};
...
{M m;
...
m.inc ();
...
m.inc ();
} // here the destructor of m will printf "Count is 2");
所以这意味着我正在寻找一个在其范围结束时(当它“超出范围”时)执行操作的构造。它应该是健壮的,因为它不需要在作用域结束时进行特殊操作,就像 c++ 中的析构函数(用于包装 mutex-alloc 和释放)一样。
干杯,毫克