Есть ли javascript-эквивалент. = Для самостоятельной конкатенации?
Вместо того, чтобы делать
my_var = my_var+'extra string';
существует сокращенный метод, например. = in php?
Ответ 1
Используйте +=
var s = 'begin';
s += 'ning';
Ответ 2
Совет по производительности (обратите внимание: этот совет действителен для IE6, но он больше не стоит беспокоиться в 2014 году)
Если вы пишете код Javascript, чтобы создать длинную строку (скажем, довольно большой блок HTML или длинный список параметров для запроса ajax), тогда не будет иметь привычки делая это:
var longString = "";
for (var i = 0; i < someBigNumber; ++i) {
if (i > 0) longString += "<br>" + whatever;
longString += someMoreStuff();
}
По мере того, как longString становится дольше и длиннее, Internet Explorer будет изогнуться все сильнее и сложнее на каждой итерации цикла. Даже когда someBigNumber на самом деле не такой большой, производительность этого цикла может быть действительно ужасной.
К счастью, есть простая альтернатива: использовать массив:
var accumulator = [];
for (var i = 0; i < someBigNumber; ++i) {
accumulator.push(someMoreStuff());
}
var longString = accumulator.join("<br>" + whatever);
Путь, путь быстрее в Internet Explorer, чем добавление повторяющихся строк.