栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

异步构造函数

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

异步构造函数

鉴于有必要避免在Node中进行阻塞,事件或回调的使用并不奇怪(1)。

稍加修改为2,即可将其与One合并:

var Element = function Element(name, fn){    this.name = name;    this.nucleus = {};    if (fn) this.on('loaded', fn);    this.load_nucleus(name); // This might take a second.}...

不过,就像

fs.readFile
您的示例中一样,核心Node API(至少)通常遵循静态函数的模式,这些静态函数会在数据准备就绪时公开实例:

var Element = function Element(name, nucleus) {    this.name = name;    this.nucleus = nucleus;};Element.create = function (name, fn) {    fs.readFile(name+'.json', function(err, data) {        var nucleus = err ? null : JSON.parse(data);        fn(err, new Element(name, nucleus));    });};Element.create('oxygen', function (err, elem) {    if (!err) {        console.log(elem.name, elem.nucleus);    }});

(1)读取JSON文件应该不需要很长时间。如果是这样,则可能是为了更改数据而更改了存储系统。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/469133.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号