我正在使用 this.evaluate 这样:
myData = this.evaluate(getData);
我需要将两个变量传递给 getData 函数,但不幸的是这不能像这样工作:
myData = this.evaluate(getData(varA,varB));
我不想这样调用该函数,因为 getData 是一个很大的函数,我需要在脚本中更频繁地评估该函数:
myData = this.evaluate(function getData(varA,varB) {
// my code...
});
那么我该怎么做才能传递参数并且仍然能够在脚本的其他部分调用该函数呢?
最佳答案
您可以通过以下方式实现:
var casper = require('casper').create();
function add(a, b) {
return a + b;
}
var result1, result2;
casper.start().then(function () {
result1 = casper.evaluate(add, 3, 5);
result2 = casper.evaluate(add, "Hello", ", World.");
}).then(function () {
casper.echo('result1: ' + result1);
casper.echo('result2: ' + result2);
})
casper.run();
输出:
result1: 8
result2: Hello, World.
关于javascript - this.evaluate 使用函数参数来实现大型可重用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38316342/