1

我觉得问这个问题很愚蠢。但是我对下面的变量范围有一个烦人的问题aaa。最后不应该输出test吗?但事实并非如此。aaa在函数中使用我做错了什么?

var casper = require('casper').create();

var aaa = 'test';
casper.start('http://google.com/', function() {
    this.echo("I'm in");
});

casper.run(function(aaa) {
  this.echo(aaa);
  this.exit();
});
4

1 回答 1

4

当您 echo out 时aaa,它使用aaa函数的第一个参数中定义的 。如果您的第一个参数被调用bbb或其他什么,那么您将看到您期望的输出,因为它将使用aaa外部闭包中定义的输出。

于 2012-11-24T08:15:14.523 回答