2011-05-23 16 views

Respuesta

91
var mystr = "Doe"; 
mystr = "John " + mystr; 

¿No funcionaría para usted?

76

Se podía hacerlo de esta manera ..

var mystr = 'is my name.'; 
 
mystr = mystr.replace (/^/,'John '); 
 

 
console.log(mystr);

exención de responsabilidad: http://xkcd.com/208/


Wait, forgot to escape a space. Wheeeeee[taptaptap]eeeeee.

+3

Estoy tentado de votar esto por la tira xkcd. ¡Buena cosa! Su solución elegante es muy probablemente más lenta porque crea instancias del procesador de expresiones regulares. – Rolf

+1

@Rolf no es muy probable. Es ** ciertamente ** más lento que la solución 'pretring + 'original string';'. –

1

Se puede utilizar

var mystr = "Doe"; 
mystr = "John " + mystr; 
console.log(mystr) 
5

también podría hacerlo de esta manera

"".concat("x","y") 
3

Si desea utilizar la nueva versión de JavaScript llamada ES 2015 (también conocido como ES6), se puede usar Template strings introdujo por ES 2015 y por lo tanto recomendado por algunas directrices (como airbnb's one):

const after = `This is : ${after}`; 
9

ES6:

let after = 'something after'; 
let text = `before text ${after}`; 
+4

Si bien este fragmento de código puede resolver la pregunta, [incluyendo una explicación] (// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) realmente ayuda a mejorar la calidad de su publicación. Recuerde que usted está respondiendo la pregunta a los lectores en el futuro, y es posible que esas personas no sepan los motivos de su sugerencia de código. Por favor, intente no saturar su código con comentarios explicativos, ¡esto reduce la legibilidad tanto del código como de las explicaciones! – kayess

+0

ES6: Interpolación de cadenas –