node中,函数内变量作用域,可以取函数外的变量的值。
当然,共同点是,外面都不能取里面的值。
php代码:
<?php $s = 123; function test () { echo $s; } test();
上面代码的打印结果是:
Notice: Undefined variable: s in D:\workspace_utf8\guai2\public\public\test\1.php on line 6
php报错了。
node代码:
var s = 123; function test() { console.log(s); } test();
上面的打印结果是123
另外,node不但能读,还能写变量
var s = 123; (function test() { s = 12345; })(); console.log(s);
上面代码的打印结果是12345,被匿名函数改变了变量的值。