Test code
const count = 500000;
let str = "";
let start = performance.now();
for(let i = 0; i < count; i++) {
str = String(i);
}
console.log("String() => ", performance.now() - start)
start = performance.now();
for(let i = 0; i < count; i++) {
str = "" + i;
}
console.log("'' + num => ", performance.now() - start)
start = performance.now();
for(let i = 0; i < count; i++) {
str = i.toString();
}
console.log("toString() => ", performance.now() - start)
Result
String() => 22.250124990940094
'' + num => 14.029250025749207
toString() => 14.550749957561493