我正在尝试加载两个txt文件并比较两个文件之间的差异。更具体地说,我每行循环一个文件,并将其与另一个 txt 文件中的每一行进行比较。
大多数情况下一切正常,但我发现我只能在 lr.on('line')
函数中访问数组。但是我已经在全局范围内声明了该数组。
代码如下:
var LineByLineReader = require('line-by-line');
var lr = new LineByLineReader('phones.txt');
var lr2 = new LineByLineReader('wor.txt');
var phoneArray = [];
var worArray = [];
lr.on('error', function(err){
if(err){
console.log("We have found the following error: " + err);
}
});
lr2.on('error', function(err){
if(err){
console.log("We have found the following error: " + err);
}
});
lr.on('line', function(line){
phoneArray.push(line);
});
lr2.on('line', function(line){
worArray.push(line);
});
for(var i = 0; i < phoneArray.length; i++){
for(var x = 0; x < worArray.length; x++){
if(array1[i] === array2[x]){
console.log("Found Match: " + array2[x]);
}
}
}
最佳答案
也许您只是忘记在 for 循环中使用正确的变量名称? 而你只需要这个? :
if(phoneArray[i] === worArray[x]){
console.log("Found Match: " + worArray[x]);
关于javascript - 元素不会添加到 Javascript 数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37151810/