Javascript 当加载以下代码时,联机IDE将失去运行函数的能力

Javascript 当加载以下代码时,联机IDE将失去运行函数的能力,javascript,class,google-apps-script,v8,google-apps-script-editor,Javascript,Class,Google Apps Script,V8,Google Apps Script Editor,我已经缩小了由于两条注释行中的任意一条未提交而引发的问题或bug。我找不到任何类似的问题,但其他人可能比我有更好的搜索能力 使用新的运行时(ChromeV8),我目前正在测试如何将类实现到现有项目中,但是这个测试是在它自己的环境中完成的 class test{ //publicFoo = 321; // <---- these two lines //#privateFoo = 456; constructor(){ Logger.log("

我已经缩小了由于两条注释行中的任意一条未提交而引发的问题或bug。我找不到任何类似的问题,但其他人可能比我有更好的搜索能力

使用新的运行时(ChromeV8),我目前正在测试如何将类实现到现有项目中,但是这个测试是在它自己的环境中完成的

class test{

    //publicFoo = 321;   // <---- these two lines
    //#privateFoo = 456;

    constructor(){
        Logger.log("test created");
        this.foo = 123;   

    }

    getfoo(){
        return this.foo;
    }

    getPrivateFoo(){
        //return this.#privateFoo;
    }

}

function myClassTester(){
        const myTest = new test();

        Logger.log("myTest.foo: " + myTest.foo );
        Logger.log("myTest.getfoo(): " + myTest.getfoo() );
        Logger.log("myTest.publicFoo: " + myTest.publicFoo );
        Logger.log("myTest.privateFoo: " + myTest.privateFoo );
        Logger.log("myTest.getPrivateFoo(): " + myTest.getPrivateFoo() );

}
类测试{
//publicFoo=321;//解释
目前不支持私有成员变量

此外,作为原始海报中的广泛建议,任何成员变量都应该在类的构造函数中声明

此解决方案由原始海报和参与评论部分的用户提供


@Ketch-这不是一个bug,V8运行时(至少在如何将其用于GAS方面)还不支持公共和私有类字段声明(它们是实验性的,但在标准轨道上,因此您可以期望它们在将来得到支持).@Oleg如果不受支持,它应该抛出一个错误,而不是允许用户完成它,但不列出以后要运行的函数。在这一点上,它仍然是一个bug。而且chrome v8支持字段声明。@Oleg我还没有测试过它。但是错误没有被正确抛出?它只是没有列出函数。@TheMaster-嗯,它不支持字段声明我在使用clasp时遇到了一个糟糕的语法错误(@Kettch-从你的帖子判断,它不是为你抛出的吗?)-最近过度频繁地尝试使用公共字段声明推送一个带有类的文件,这导致了糟糕的语法和推送拒绝(它确实加入了在线编辑器,尽管它肯定可以使用描述性错误,而不是指出一般的语法错误)@大师啊,这太令人失望了。这可能是我以前的一些C实践再次吸引了我。我一直在关注V8文档,因为我在迁移页面上找不到特定的gs文档。使用clasp不会抛出错误,这表明推送成功。在在线IDE中进行快速编辑时,我遇到了上面的错误语法