0
我正在使用new_array.filter(val =>!old_array.includes(val));方法來比較兩個數組。它在Chrome中運行良好,但在IOS中不能運行Chrome。似乎和問題在=>運算符。不幸的是,調試模式在我所擁有的IPAD中不可用。有沒有其他的替代方案。在Chrome中使用陣列比較而不使用Chrome IPAD
Sathya
我正在使用new_array.filter(val =>!old_array.includes(val));方法來比較兩個數組。它在Chrome中運行良好,但在IOS中不能運行Chrome。似乎和問題在=>運算符。不幸的是,調試模式在我所擁有的IPAD中不可用。有沒有其他的替代方案。在Chrome中使用陣列比較而不使用Chrome IPAD
Sathya
是的。另一種方法是不使用箭頭函數(至少不是部署版本),這是一項相當新的功能(儘管我很驚訝地聽說Chrome for iOS不支持它們; Chrome的底層JavaScript引擎已經支持他們很長一段時間)。
要做到這一點,你有兩個選擇:
Transpile與像Babel工具創建的部署版本之前。這樣,您可以高興地使用箭頭功能和ES2015的許多(儘管不是全部)其他功能,並且無需擔心在舊版瀏覽器上的支持。
或者僅僅解決一個具體的東西,使用function
功能:
new_array.filter(function(val) { return !old_array.includes(val); });
您沒有使用this
或super
或類似的,你需要關閉了回調,所以它不」不得不是一個箭頭功能。
我用第二個選項,效果很好。謝謝T.J.克勞德 – sathya