簡體   English   中英

無論如何,IE11 是否支持 BigInt?

[英]Is there anyway for IE11 to support BigInt?

我試圖在 stackoverflow 和 google 中尋找答案,以尋找在 IE 11 中支持 BigInt 的任何方式。有沒有人成功地為 IE(和舊版本的 Safari)添加支持 BigInt? 目前我正在開發一個使用 BigInt 的插件。 在 IE 中運行 outook-addin 會引發 BigInt 未定義錯誤。

我目前正在看這兩個:

https://github.com/GoogleChromeLabs/jsbi

https://github.com/peterolson/BigInteger.js

不,那里沒有。 從來沒有計划增加對 Internet Explorer 的支持,而且隨着 Micrsoft 很快就會放棄對 IE 的支持,我認為它不會有任何進展。 查看BigIntMDN 頁面

這幾乎是一個騙局: Outlook/IE 無法使用 BigInt 數據類型運行插件

以防萬一 :

這是我為使 BigInt 在 IE11 中為我的 Outlook-Addin 工作所做的工作:

  1. 在我的項目中安裝/添加了JSBI 庫
  2. JSBI-dataviews添加了一些數據視圖polyfill 請看我的評論。
  3. 也基於elk-chat 的一些修改

我希望這對大家有幫助。

你可以試試這個 npm 庫。 在基於 JSBI 的 BigDecimal 的幫助下,用於執行任意算術計算的計算器實用程序。

npm 安裝 jsbi 計算器

它適用於 IE11。

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Jsbi-calculator Test</title>
    <script src="https://cdn.jsdelivr.net/npm/jsbi-calculator/dist/jsbi-calculator-umd.js"></script>
  </head>
  <body></body>
  <script type="text/javascript">
    const expressionOne = "((10 * (24 / ((9 + 3) * (-2)))) + 17) + 5";
    const resultOne = JBC.calculator(expressionOne);
    console.log(resultOne);
    // -> '12'

    const userAgent = navigator.userAgent;
    const isIE11 =
      userAgent.indexOf("Trident") > -1 && userAgent.indexOf("rv:11.0") > -1;
    let max;
    // MAX_SAFE_INTEGER not available in IE11
    max = isIE11 ? "9007199254740991" : String(Number.MAX_SAFE_INTEGER);

    console.log(max);
    // -> '9007199254740991'
    const expressionTwo = max + " + 2";
    const resultTwo = JBC.calculator(expressionTwo);
    console.log(resultTwo);
    // -> '9007199254740993'
  </script>
</html>

暫無
暫無

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

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