0

I'm using a little library that use ES6 arrow function but in Internet Explorer doesn't work but on Edge yes.

// fill in empty spaces with random letters
    if (options.fillBlanks) {
        var lettersToAdd, fillingBlanksCount = 0, extraLetterGenerator;
        if (typeof options.fillBlanks === 'function') {
            extraLetterGenerator = options.fillBlanks;
        } else if (typeof options.fillBlanks === 'string') {
            lettersToAdd = options.fillBlanks.toLowerCase().split('');
            extraLetterGenerator = () => lettersToAdd.pop() || (fillingBlanksCount++ && '');
        } else {
            extraLetterGenerator = () => LETTERS[Math.floor(Math.random() * LETTERS.length)];
        }
        var extraLettersCount = this.fillBlanks({puzzle, extraLetterGenerator: extraLetterGenerator});
        if (lettersToAdd && lettersToAdd.length) {
            throw new Error('Some extra letters provided were not used: ${lettersToAdd}');
        }
        if (lettersToAdd && fillingBlanksCount && !options.allowExtraBlanks) {
            throw new Error('${fillingBlanksCount} extra letters were missing to fill the grid');
        }
        var gridFillPercent = 100 * (1 - extraLettersCount / (options.width * options.height));
        console.log('Blanks filled with ${extraLettersCount} random letters - Final grid is filled at ${gridFillPercent.toFixed(0)}%');
    }

    return puzzle;
  },

the error is on these line

extraLetterGenerator = () => lettersToAdd.pop() || (fillingBlanksCount++ && '');

extraLetterGenerator = () => LETTERS[Math.floor(Math.random() * LETTERS.length)];

var extraLettersCount = this.fillBlanks({puzzle, extraLetterGenerator: extraLetterGenerator});

how can fix it?

The complete code is available on http://crucipuzzle.nexusdigital.it/

user2672769
  • 33
  • 1
  • 4

0 Answers0