获取未定义的节点.js代码
Getting undefined node.js code
>我在下面有这段代码。使用 readline
和 fs
模块,我尝试逐行搜索文件中的特定单词,如果该单词存在,则将该单词的内容推送到数组,但是当我尝试返回此数组时,我得到一个未定义。有什么想法吗?
var fs = require('fs');
var readline = require('readline');
var reader = readline.createInterface({
input: fs.createReadStream('MY_FILE_NAME.txt'),
});
function newDefineWord(reader1) {
this.reader = reader1;
}
newDefineWord.prototype.define = function(searchTerm) {
var arr = [];
this.reader.on('line', function (line) {
if (line.search(searchTerm)!== -1) {
arr.push(line);
console.log(arr);
}
});
return arr;
}
var word = new newDefineWord(reader);
console.log(word.define('libro'));
reader.on 是异步的,你在代码应该得出结论之前返回它
newDefineWord.prototype.define = function(searchTerm, cb) {
var arr = [];
this.reader.on('line', function (line) {
if (line.search(searchTerm)!== -1) {
arr.push(line);
console.log(arr);
}
});
this.reader.on('close',function(){
cb(arr)
})
}
var word = new newDefineWord(reader);
word.define('libro', function(arr){
console.log(arr);
})
此外,如果您不想使用回调,您可以使用 promise 或生成器
相关文章:
- 为什么indexOf在这个js代码中不起作用
- js代码从jQuery转换为原生代码
- JS代码中的减号
- 谷歌地图Api和JS代码不工作
- HTML 5 和 3.js 代码不会在网页上显示任何内容
- 为什么这个JS代码打印未定义
- JS代码在jsbin中有效,在jsfiddle或Chrome/Safari中无效
- 页面加载后加载简单的JS代码
- 扩展JS代码
- 如何使用js代码转发reactjs路由器
- 用js代码重新定位文本
- 即使被信号处理程序中断,node.js代码也会一直运行到完成吗
- JS代码使IE9和Safari冻结,在Opera中不起作用
- 分析JS代码以在客户端获取cookie
- 改进js代码以删除全局变量和函数
- 对php文件的Ajax调用返回该文件中的JS代码,而不是执行它
- 在单独的上下文中运行 js 代码并访问其全局变量
- 这个 ajax.js 代码有什么问题
- 如何使用 GetValues 使用 Jint 运行 Js 代码
- JS代码有什么问题,让我知道代码是否可以改进