Salve, in Visual Basic ho implementato un metodo per ottimizzare il tempo di esecuzione nel concatenamento di stringhe di grandi dimensioni. Quindi invece, di scrivere:

codice:
For I = 1 To LoopCount
    BigStr = BigStr & ConcatStr
Next I
ho una funzione che prealloca lo spazio necessario a 'ospitare' la stringa da concatenare:

codice:
Sub Concat(Dest As String, Source As String)
      Dim L As Long
        L = Len(Source)
        If (ccOffset + L) >= Len(Dest) Then
          If L > ccIncrement Then
            Dest = Dest & Space$(L)
          Else
            Dest = Dest & Space$(ccIncrement)
          End If
        End If
        Mid$(Dest, ccOffset + 1, L) = Source
        ccOffset = ccOffset + L
      End Sub
Detto ciò, avrei bisogno di una funzione analoga ma in JavaScript. Ho simulato la funzione Space$ in questo modo:

codice:
function space(cnt) {
        return (new Array(cnt + 1)).join('');
}
E utilizzo il metodo substr della stringa al posto del Mid, in realtà però quando vado a fare:

codice:
var L = srcStr.length;
bigStr = bigStr + space(L);
bigStr.substr(ccOffset+1, L) = srcStr;
mi viene restituito un errore. Quello che voglio fare è semplicemente, come in VB, inserire, nello spazio di memoria appena creato, la stringa desiderata. Come posso farlo in JavaScript? Vi ringrazio anticipatamente!