r.js を使用して、RequireJS を使用している JavaScript コードを最適化/醜化しています。
私のモジュールの 1 つはポリフィル モジュールです。
define(function(){
if (!Array.prototype.filter)
{ /* ... */ }
var isPolyfillNeeded = function () { /* ... */ }
if (isPolyfillNeeded()) {
/* polyfill implementation */
}
});
モジュールを醜くしようとすると、r.js からスローされる解析エラーが発生し、次のようになります。
Tracing dependencies for: ../scripts/main-app
Error: Parse error using UglifyJS for file: C:/.../polyfill.js
Unexpected character '?' (line: .., col: .., pos: ..)
undefined
In module tree:
../scripts/main-main-app
moduleA
moduleB
に置き換えるvar isPolyfillNeeded = function ()
とfunction isPolyfillNeeded()
正常に動作します。何故ですか?