existují dva způsoby, jak provést zřetězení řetězců v JavaScriptu. Tento příspěvek je demonstruje a vysvětluje, který z nich je rychlejší.
+ operátor
operátor + provede zřetězení řetězce, jakmile je jedním z jeho operandů řetězec. Pak se druhý operand převede na řetězec., Příklad:
> "Say hello " + 7 + " times fast!"’Say hello 7 times fast!’
Alternativně, můžete použít +=, kde
a += b
je zkratka pro
a = a + b
Příklad:
> var str = "";> str += "Say hello ";’Say hello ’> str += 7;’Say hello 7’> str += " times fast!";’Say hello 7 times fast!’
Spojení pole řetězců
Sbírat podmínky, které mají být spojeny v matici a k ní připojit později.
> var arr = ;> arr.push("Say hello ");1> arr.push(7);2> arr.push(" times fast");3> arr.join("")’Say hello 7 times fast’
který z nich je rychlejší?
řetězce jsou neměnné, většina řetězcových operací, jejichž výsledky jsou řetězce, vytváří nové řetězce. Proto jazyky, jako je C# nebo Java, jejichž manipulace s řetězci je podobná JavaScriptu, mají speciální třídy, které pomáhají s zřetězením řetězců., Například C# volá tuto třídu StringBuilder. Moderní javascriptové motory však interně optimalizují operátora+. Tom Schuster zmiňuje lana jako jednu z možných technik optimalizace. Proto není potřeba StringBuilder v JavaScriptu. Stačí použít += a je hotovo.
Leave a Reply