IE explorer 11中的Javascript语法错误,但在Chrome中没有问题

IE explorer 11中的Javascript语法错误,但在Chrome中没有问题,javascript,Javascript,我有一小段代码在chrome中运行良好,没有错误。在Internet explorer中运行时,我会遇到语法错误,但我对这些差异不太熟悉,不知道是什么导致了错误 sleep(1000).then(() => { resetTDcolor(SRID) }); 错误显示在上述代码的第一行。睡眠功能和重置功能如下所示,以防它们有所帮助 function sleep (time) { return new Promise

我有一小段代码在chrome中运行良好,没有错误。在Internet explorer中运行时,我会遇到语法错误,但我对这些差异不太熟悉,不知道是什么导致了错误

    sleep(1000).then(() => {
            resetTDcolor(SRID)
            });
错误显示在上述代码的第一行。睡眠功能和重置功能如下所示,以防它们有所帮助

   function sleep (time) {
       return new Promise((resolve) => setTimeout(resolve, time));
   }

   function resetTDcolor(SRID){
       var SR = document.getElementsByClassName('scoutRequirement' + SRID);
       for (i=0;i<SR.length;i++){
         SR[i].style.backgroundColor = '';
       }
   }

任何帮助或澄清都将不胜感激。

Internet Explorer 11没有,也没有。

Internet Explorer并不真正支持函数,您必须将其重写为functionresolve{setTimeoutresolve,time;}。我甚至不确定Internet explorer是否对Promise有基本的支持请看这里IE 11不支持箭头函数请重写它或使用babel f.e.或者您可以使用babel。@icepickle我更改了代码,该行不再作为语法错误出现。不幸的是,页面上仍然有太多错误,无法确保它在IE中正确运行。它是用铬做的。所以现在,我将把它当作赢。我实现的解决方案如下1。后藤:2。粘贴代码并选择es2015。3.如果您使用的是IE中不支持的forEach,请在新代码中粘贴以下内容:if window.NodeList&!NodeList.prototype.forEach{NodeList.prototype.forEach=Array.prototype.forEach;}4。使用indexOf而不是includes