我正在尝试使用es5-shim.js在我的phantomjs文件中添加bind polyfill。
我试图使用require()包含es5-shim.js,但是当我执行phantomjs文件时仍然会出错。使用它的正确方法是什么?
答案 0 :(得分:1)
我在this link尝试了polyfill,它似乎对我很好。
请注意,phantomjs脚本在WebKit的JavaScriptCore引擎(使用ES5)中运行,因此大多数这些功能应该已经开箱即用。
D:\>phantomjs.exe
phantomjs> console.log(Object.keys)
function keys() {
[native code]
}
undefined
phantomjs> var shim = require("D:\\es5-shim.js");
undefined
phantomjs> console.log(Object.keys)
function keys(object) {
if (isArguments(object)) {
return originalKeys(ArrayPrototype.slice.call(object));
} else {
return originalKeys(object);
}
}