Estoy intentando configurar un script para concatenar algunas variables dentro de una cadena si existen, para colocar las etiquetas de metadatos apropiadas en un documento HTML procesado.Cadenas de concatenación con declaraciones `if` en JavaScript
Mi código es la concatenación:
data = "<html>\n<head>\n" + "</head>\n<body>\n\n" + paras.join("\n\n") + "\n\n</body>\n</html>";
estoy tratando de añadir if
declaraciones como la siguiente en él (entre el primer y segundo puntos):
if (typeof metadata_title !== "undefined") {
"<title>" + metadata_title + "</title>\n"
}
if (typeof metadata_author !== "undefined") {
"<meta name=\"author\" content=\"" + metadata_author + "\"></meta>\n"
}
if (typeof metadata_date !== "undefined") {
"<meta name=\"date\" content=\"" + metadata_date + "\"></meta>\n"
}
pero no puedo agregue cualquiera de estas instrucciones directamente en el código de concatenación (arroja un error: Unexpected token (
).
¿Qué mejor manera de agregar sentencias como estas a mi cadena de concatenación?
En casos excepcionales ('var undefined = 'test';') el resultado es incorrecto. Usar 'typeof' es ahorrar. – scessor
Si una de las variables no está definida obtendrá un 'ReferenceError'. Creo que esto es lo que el OP tenía en mente. El suyo está perfectamente bien si se definen los tres metadatas, por supuesto. –