Добавить символы в строку в Javascript

108

Мне нужно добавить символы цикла For в пустую строку. Я знаю, что вы можете использовать функцию concat в Javascript для выполнения concat со строками

var first_name = "peter"; 
var last_name = "jones"; 
var name=first_name.concat(last_name) 

но с моим примером это не работает. Есть идеи, как это сделать по-другому?

мой код:

    var text ="";
    for (var member in list) {
            text.concat(list[member]);
    }
Бруно
источник
1
Если список является массивом, не используйте for...inобычный forцикл. Дополнительная информация здесь: developer.mozilla.org/en/JavaScript/Reference/Statements/… Кстати. если вы внимательно посмотрите на оба ваших примера, вы увидите разницу ( name=first_name.concat(last_name)vstext.concat(list[member])
Феликс Клинг,

Ответы:

154
var text ="";
for (var member in list) {
        text += list[member];
}
Blazes
источник
Лучшим способом может быть получение ключей от объекта вместо iterating ( for...in) и присоединение к ним: var text = ""; text += Object.keys(list).join('')
Blazes
50

Вы также можете добавлять строки к существующей строке следующим образом:

var myString = "Hello ";
myString += "World";
myString += "!";

результат будет -> Hello World!

Мэтт Сич
источник
7

просто использовал +оператор. Javascript объединяет строки с +

Neebz
источник
5

Похоже, вы хотите использовать join, например:

var text = list.join();
Уолтер Рамсби
источник
1
Работает только для массивов. Но я боюсь, что OP использует for...inдля обхода массива, поэтому ваше предложение, вероятно, сработает.
Феликс Клинг,
5

Чтобы использовать String.concat, вам необходимо заменить существующий текст, поскольку функция не действует по ссылке.

var text ="";
for (var member in list) {
        text = text.concat(list[member]);
}

Конечно, предложения join () или + =, предложенные другими, также будут работать нормально.

Бретт Замир
источник
Это хорошее решение, потому что оно оставляет дверь открытой для объединения функций
Марк Карпентер-младший,
3

Простое использование text = text + string2

сра
источник