JavaScript class iOS 的 Safari 错误

JavaScript class error on Safari for iOS

我在 Javascript 中自定义了 class,尽管它在 Safari 上运行良好,在 Mac OS 中运行 Chrome,但它给了我我的 iPad.

出错了

我正在通过 Safari 上的“开发”菜单进行调试以获取错误。奇怪的是,网上没有任何结果我可以找到更多相关信息。错误是 "Unexpected use of reserved word 'class'".

我的 JS:

class LoadingIndicator{ // error is here

    constructor(elementID){

        this.tick = 8;

        this.waitStatus = document.getElementById(elementID);

        this.animateLoaderVar = setInterval(
                                    this.animateLoader.bind(this),
                                    10
                                )

    }

    animateLoader (){        

        if(this.tick == 8){

            this.waitStatus.firstElementChild.innerHTML = ".";

        }
        else if(this.tick == 16){

            this.waitStatus.firstElementChild.innerHTML = "..";

        }else if(this.tick == 24){

            this.waitStatus.firstElementChild.innerHTML = "...";

            this.tick = 0;

        }

        this.tick += 1;

    }

    removeLoader(){

        this.waitStatus.outerHTML = "";
        delete this.waitStatus;

        clearInterval(this.animateLoaderVar);

    }

}

Class 是 ES6 的一部分,因此您使用的 ios 上的浏览​​器似乎不支持它。您的 iPad 使用的 iOS 是什么版本?

这里还声明 class 严格模式下的声明 运行:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Classes

您可能需要使用 'use strict';

或者如果它仍然没有帮助https://babeljs.io/