CyborgBeta
Commander
- Registriert
- Jan. 2021
- Beiträge
- 2.955
Moin,
bitte spart euch Hasskommentare jeder Art...
Ich habe eine JS-Funktion, die zu langsam ist (die Ausführung dauert bei ca. 5000 Wörtern ca. 3-4 Sekunden). Wie könnte man die hinsichtlich der Laufzeit optimieren, ohne die Semantik (all zu sehr) zu ändern?
Wird
Besten Dank im Voraus
bitte spart euch Hasskommentare jeder Art...
Ich habe eine JS-Funktion, die zu langsam ist (die Ausführung dauert bei ca. 5000 Wörtern ca. 3-4 Sekunden). Wie könnte man die hinsichtlich der Laufzeit optimieren, ohne die Semantik (all zu sehr) zu ändern?
Javascript:
function getPredictions(words, removals) {
let scores = [];
for (let i = 0; i < words.length; i++) {
let w = words[i];
let set1 = new Set(w.split(""));
let set2 = new Set([...w].filter((x) => !removals.includes(x)));
scores.push([w, set1, set2, 0, i + 1]);
}
for (let i = 0; i < scores.length; i++) {
for (let j = 0; j < scores.length; j++) {
if (i != j) {
let c = 0;
scores[i][1].forEach((e) => {
if (scores[j][2].has(e)) {
c++;
}
});
if (c > 0) {
scores[i][3]++;
}
}
}
}
scores.sort((a, b) => {
return b[3] - a[3];
});
return scores;
}
Wird
set1
überhaupt gebraucht?Besten Dank im Voraus