2016-11-03 60 views
0

我在我的應用中使用了下劃線js庫(http://underscorejs.org/#filter)。下劃線js在IE中的語法錯誤11

一切都按預期在Chrome中運行。然而,當我在IE11上運行相同的代碼我在控制檯得到一個JS錯誤

SCRIPT1002:語法錯誤 文件:OptionSrv.js,線:197,柱:62

當我點擊該文件,使我錯誤的光標放置在=> - 這是一個紅色的鯡魚,或者應該有另一種方式做到這一點,在鉻和IE瀏覽器?

注意,如果我註釋掉在IE中我沒有得到控制檯錯誤然而這顯然不是我所需要

var group = myOptions.filter(g => g.options.indexOf(option.OptionCode) > -1); 
+1

這是什麼都用下劃線語法呢?你得到的錯誤信息是指向'=>'這是一個ES6箭頭函數...並且在你鏈接到的例子中沒有使用** – Quentin

回答

1

的Internet Explorer 11不支持箭頭的功能。

這就是你的代碼的g => g.options.indexOf(option.OptionCode) > -1的一部分。

您可以使用正常的匿名(或命名)函數,而不是在這裏,它應該很好地工作:

var group = myOptions.filter(function(g) { 
    g.options.indexOf(option.OptionCode) > -1); 
}); 
1

IE11不支持ES6語法修復線路。如果你想編寫像Arrow函數這樣的ES6語法,你可以通過像Babel這樣的轉譯器運行你的代碼。

如果你喜歡你的客戶端代碼是用舊的瀏覽器兼容,你不關心新的語法,只需使用ES5語法:)