为什么我有这个错误:对象不支持Internet Explorer的属性或方法'forEach'?

Dav*_*uez 12 javascript internet-explorer internet-explorer-10

我正在使用maven在jenkins插件上使用Javascript,我有这样的代码:

   function arrayElements(element, index, array) 
     {
         var arrayPaths = element.split("\\");
         var projectSource = arrayPaths[2];
         var array = element.split("_");
         if (projectSource === global ) {             
             if (array[2]===filtro){
             document.getElementById("source").options.add(new Option(arrayPaths[3], element));
             }
         }
     }
    function fillCompiledSource(object, projects)
    {
        document.getElementById("source").innerHTML = "";        
        global = document.getElementById("branches").value;     
        projects.forEach(arrayElements)
    }
    var projects = new Array();</script><script>
    function fillCombo()
    {
         document.getElementById("source").innerHTML = "";
         global = document.getElementById("branches").value;     
         var array = document.getElementById("branches").value.split('/');
         global = array[1];
         projects.forEach(arrayElements)       
    }
Run Code Online (Sandbox Code Playgroud)

这只在Internet Explorer中失败,只有当文档模式是IE8标准时我不知道是什么原因以及我如何解决这个问题.

Pd:互联网浏览器是10

Nik*_*los 11

是的,因为IE8 没有实现Array.forEach(没有其他更现代的JS方法).如果您需要在IE8中工作,则必须对其进行填充(请参阅兼容性部分).

顺便说一句,MDN也拥有大多数其他不受支持的方法的资源.