Agregar caracteres a una cadena en Javascript

108

Necesito agregar caracteres For Loop a una cadena vacía. Sé que puedes usar la función concat en Javascript para hacer concats con cadenas

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

pero con mi ejemplo no funciona. ¿Alguna idea de cómo hacerlo de otra manera?

mi código :

    var text ="";
    for (var member in list) {
            text.concat(list[member]);
    }
Bruno
fuente
1
Si la lista es una matriz, no use for...insino un forbucle normal . Más información aquí: developer.mozilla.org/en/JavaScript/Reference/Statements/… Por cierto. si observa de cerca sus dos ejemplos, puede ver la diferencia ( name=first_name.concat(last_name)vstext.concat(list[member])
Felix Kling

Respuestas:

154
var text ="";
for (var member in list) {
        text += list[member];
}
Llamas
fuente
Una mejor manera podría ser obtener las claves del objeto en lugar de iterar ( for...in) y unirse a ellas: var text = ""; text += Object.keys(list).join('')
Blazes
50

También puede seguir agregando cadenas a una cadena existente así:

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

el resultado sería -> Hello World!

Matt Sich
fuente
7

simplemente usó el +operador. Javascript concate cadenas con +

neebz
fuente
5

Parece que quieres usar join, por ejemplo:

var text = list.join();
Walter Rumsby
fuente
1
Solo funciona para matrices. Pero me temo que el OP utiliza for...inpara atravesar una matriz, por lo que su sugerencia probablemente funcione.
Felix Kling
5

Para usar String.concat, necesita reemplazar su texto existente, ya que la función no actúa por referencia.

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

Por supuesto, las sugerencias join () o + = ofrecidas por otros también funcionarán bien.

Brett Zamir
fuente
Esta es una buena solución porque deja la puerta abierta para el encadenamiento de funciones
Mark Carpenter Jr
3

Texto de uso simple = texto + cadena2

sra
fuente