web-dev-qa-db-ja.com

Internet Explorer 11:オブジェクトはプロパティまたはメソッド「isInteger」をサポートしていません

internet Explorerコンソールでこのエラーが発生しました 'オブジェクトはプロパティまたはメソッド' isInteger 'をサポートしていません'どうすれば解決できますか?

コード:

    function verificaNota(nota){
     if (nota.length>0){
         var arr = [];
         if( nota.indexOf(".") != -1 ){
             return ferificareArrayNote(nota.split('.'));
         }else if( nota.indexOf(",") != -1 ){
             ferificareArrayNote(nota.split(','));
         }else if( nota.length<=2 && Number.isInteger(Number(nota)) && Number(nota)<=10 && Number(nota) > 0){
             return true;
         }else {
             return false;
         }
     }
     return true;
    }

そして、はい、私はそれに文字ではなく数字を渡します。

16
Stefan

@Andreasで述べられているように、Number.isNumberはES6の一部であるため、IE11ではサポートされていません。

次のポリフィルをjavasriptに追加できます

Number.isInteger = Number.isInteger || function(value) {
    return typeof value === "number" && 
           isFinite(value) && 
           Math.floor(value) === value;
};

ソース: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger

42
Jaromanda X