function test() {
alert(1);
return "hello";
}
Function.prototype.before = function (func) {
var __bself = this;
return function () {
if (func.apply(this, arguments) == false)
return false;
return __bself.apply(__bself, arguments);
}
};
test.before(function (){
alert(2);
})();if (func.apply(this, arguments) == false)是什么意思?我不认为这个函数会返回false。
发布于 2016-06-08 03:02:00
函数可以返回任何值。这包括false。
如果您的函数不返回false,那么该条件中的代码将永远不会运行。所以你可以删除它,如果它因为某些原因惹恼了你。
以下是一个返回false的函数的示例
function test() { // This function is never called
console.log(1);
return "hello";
}
Function.prototype.before = function (func) {
var __bself = this;
return function () {
if (func.apply(this, arguments) == false){
return false;
}
return __bself.apply(__bself, arguments);
}
};
test.before(function (){
console.log(2);
return false;
})();
https://stackoverflow.com/questions/37687251
复制相似问题