2016-07-26 5 views
9

Привет там я получаю сообщение об ошибке в ie11, но не в хроме ошибка Script1002 Синтаксическая ошибкаIE 11 Script1002 Array.filter()

Мой код выглядит следующим образом

var selectedRoles = vm.roles.filter(x => x.id === role.id); 

линии и ciolumn номер ошибки указывает на то, что это => ie11 не нравится. Как я сказал, отлично работает в Chrome и края

+0

IE11 не поддерживает функцию стрелки –

ответ

16

т.е. 11 не поддерживает arrow functions

попробовать

var selectedRoles = vm.roles.filter(function(x) { return x.id === role.id; }); 
+1

awesome thanks! – MicroMan

2

IE не поддерживается arrow function проверку browser compatibility here. Если вы хотите поддержку IE, используйте вместо этого обычную функцию.

var selectedRoles = vm.roles.filter(function(x) { 
    return x.id === role.id 
}); 
0

Функция стрелок не поддерживается еще в IE 11. Вы можете обратиться к этой таблице обеспечения совместимости: https://kangax.github.io/compat-table/es6/, чтобы получить представление о том, что suuported, где и в какую степени подробным образом.

Используйте pollyfills или PRE-ES6-совместимый код, например.

var selectedRoles = vm.roles.filter(function(x) { 
    return x.id === role.id 
});