CNode

node.js全局变量

VVDON发布于13 年前最后回复13 年前4 回复7910 浏览0 收藏

想要读取文件中的内容后输出,后来想做成一个函数,可是参数好像传不出来。 用return表示undefined,下面这种写法也不行,怎么破?

var fs = require('fs');

function hellof() {
    fs.readFile('hello.txt', 'utf-8', function (err, data) {
        if (err) {
            console.log('if');
            console.error(err);
        } else {
            console.log(data);
            global.name = data;  
        }
    });
}
hellof();
console.log(global.name);
查看回复

回复 (3)

L
leapon#1·13 年前

function hellof(cb) { fs.readFile('hello.txt', 'utf-8', function (err, data) { if (err) { console.log('if'); console.error(err); } else { cb(data); global.name = data;
} }); }

hellof(function(data){ console.log(data); });

L
leapon#2·13 年前

你的程序里,console.log(global.name); 执行的时候,global.name 还没有被赋值。

R
racyily#3·13 年前

回调函数什么时候执行不一定的,所以肯定没办法啊

参与回复
登录后即可参与回复。登录