Ответ 1
Используйте +=
var s = 'begin';
s += 'ning';
Вместо того, чтобы делать
my_var = my_var+'extra string';
существует сокращенный метод, например. = in php?
Используйте +=
var s = 'begin';
s += 'ning';
Совет по производительности (обратите внимание: этот совет действителен для 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, чем добавление повторяющихся строк.
Да: my_var += 'extra string';
+=
Пример:
my_var += "extra string";