簡體   English   中英

Internet Explorer 中的 Javascript/Jquery 錯誤

[英]Javascript/Jquery Errors in Internet explorer

我已經用 chrome 完成了大部分編程調試我的網站,最近在 Internet Explorer 中查看了結果。 我得到的錯誤沒有出現在 chrome 中。 我相信我在堆棧溢出時從其他已接受的答案中獲得了這些代碼片段。 他們可以得到的任何幫助都將不勝感激。 我確實做了一些研究,但 Internet Explorer (11) 解決方案對我來說並不是立竿見影的

睡覺

核心價值

異步

圖片中的錯誤都是由於 IE 不支持 ES6/ES7 語法造成的。 如果您需要 Internet Explorer 11 中的 ES6 功能,請查看Babel等轉譯器。 這里有一篇關於如何使用 babel 將 ES6 轉換為 ES5 的文章,請查看。

  1. 箭頭 function

您應該使用 Bable 轉換它或更改如下語法:

function sleep(ms) {
  return new Promise(function (resolve) {
    return setTimeout(resolve, ms);
  });
}
  1. Promise

你可以參考這個線程關於讓 promise 在 IE 中工作。 您可以使用像Bluebird這樣的第 3 方 promise 庫。

  1. Object.entries()

您需要添加一個polyfill以使其在 IE 11 中工作:

if (!Object.entries) {
  Object.entries = function( obj ){
    var ownProps = Object.keys( obj ),
        i = ownProps.length,
        resArray = new Array(i); // preallocate the Array
    while (i--)
      resArray[i] = [ownProps[i], obj[ownProps[i]]];
    
    return resArray;
  };
}
  1. 異步 function

您可以使用facebook/regenerator在 IE 11 中填充 async/await。

您可以按照以下步驟在 IE 11 中支持 async/await:

  • 使用babel-preset-env
  • yarn add regeneratornpm install regenerator
  • node_modules/regenerator-runtime/runtime.js (10.7kb minified)添加到你的包中

參考鏈接: 通過 3 個簡單步驟為您的 Webapp 添加 ES7 Async/Await 支持

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM