Ребята как ускорить чтение файла и перебор массива?
book.split(" ").forEach(element => {
//console.log("Element:"+element+" "+dict.length);
var t= element.trim();
if(t.match(/[a-z]{3}/))
for(var i=0;i<dict.length;i++){
//console.log("!");
var translation = "";
var etalon = dict[i].trim().toLowerCase();
if(etalon==element.trim().toLowerCase()){
if(i>trashOld){
for(var j=0;j<eng2ru.length;j++){
var translate = eng2ru[j].match(/[a-z]+/);//[0];//.toLowerCase();
if(translate&&translate.length>0){
translate = translate[0].toLocaleLowerCase();
if(
translate==etalon ||
translate.length>4&&etalon==translate.substr(0,translate.length-2)&&translate.substr(translate.length-2,2)=="ed"||
translate.length>4&&etalon.substr(0,etalon.length-1)==translate.substr(0,translate.length-3)&&translate.substr(translate.length-3,3)=="ing"
){
translation = eng2ru[j];
break;
}
}
}
//not strict search ed,ing
if(translation==""){
for(var j=0;j<eng2ru.length;j++){
var translate = eng2ru[j].match(/[a-z]+/);//[0];//.toLowerCase();
if(translate&&translate.length>0){
translate = translate[0].toLocaleLowerCase().trim();
if(
etalon.includes(translate.substr(0,translate.length-1))&&etalon.length>3&&translate.length>3 && etalon[0]==translate[0]
){
//console.log(etalon+" includes "+translate);
translation = eng2ru[j];
break;
}
}
}
}
console.log(element+" #"+i+" - "+translation+"\n");
}
break;
}
}
});