Accede a la lección en vídeo de la membresía. Cada martes, jueves y sábado aprende con una clase nueva. Puedes identificarte en este enlace o suscribirte a los cursos.
Contenido de la clase
(Recordar que este contenido es la escaleta del vídeo)
| Concepto | ¿Qué hace? | Ejemplo |
| Variable | Guarda un dato | var presupuesto = 100; |
| Condición (if/else) | Ejecuta algo solo si se cumple una condición | if (presupuesto > 50) {…} |
| Bucle (for) | Repite una acción varias veces | for (var i = 0; i < 5; i++) |
| Función | Organiza código que puedes reutilizar | function saludar(nombre) |
| Objeto y método | Maneja campañas, anuncios, etc. | campaign.pause(); |
| Logger.log() | Muestra información en la consola | Logger.log(«Texto»); |
1️⃣ Variables (Guardar información)
Una variable es como una caja donde guardas datos: números, textos, etc.
var presupuesto = 100;
var nombreCampaña = «Ventas Ecommerce»;
➡️ Usamos var para declarar la variable.
➡️ Puedes darle el nombre que quieras (sin espacios, usa camelCase).
➡️ Las variables pueden almacenar números, texto (entre comillas) o incluso otros elementos como listas u objetos (lo veremos más adelante).
2️⃣ Condiciones (if / else)
Sirven para decirle al script:
✅ “Si pasa esto, haz esto otro”.
if (presupuesto > 50) {
Logger.log(«Presupuesto alto»);
} else {
Logger.log(«Presupuesto bajo»);
}
🟢 Si la condición se cumple (presupuesto > 50), hace lo que hay dentro del primer bloque.
🔴 Si no se cumple, hace lo que hay dentro de else.
3️⃣ Bucles (for)
Los bucles permiten repetir acciones varias veces. Por ejemplo: mostrar los números del 0 al 4.
for (var i = 0; i < 5; i++) {
Logger.log(«Número: » + i);
}
- i = 0: empezamos en 0.
- i < 5: mientras i sea menor que 5, sigue.
- i++: suma 1 a i cada vez.
💡 Resultado en el log:
Número: 0
Número: 1
Número: 2
Número: 3
Número: 4
4️⃣ Funciones (Organizar el código en bloques reutilizables)
Una función es un bloque de código que puedes llamar cuando quieras.
function saludar(nombre) {
Logger.log(«Hola, » + nombre);
}
saludar(«Ecommerce»);
➡️ Puedes pasarle información (como nombre) al llamar a la función.
➡️ La función puede usarse las veces que quieras sin repetir el código.
5️⃣ Concepto de objetos y métodos
En Google Ads, casi todo se basa en objetos: campañas, anuncios, palabras clave…
Y cada objeto tiene métodos (acciones que puedes hacer con ellos).
Todo gira en torno a objetos y métodos, y entender esto es clave para automatizar y personalizar tareas.
Ejemplo básico de objeto y método:
var campaigns = AdsApp.campaigns().get();
- AdsApp: Es el objeto principal que conecta con tu cuenta de Google Ads.
- .campaigns(): Método que llama a las campañas.
- .get(): Método que obtiene todas las campañas activas en ese momento.
Otro ejemplo:
campaign.pause();
Vamos con un ejemplo
function main() {
// Crea un iterador para recorrer todas las campañas habilitadas
var campaignIterator = AdsApp.campaigns()
.withCondition(«Status = ENABLED») // Solo campañas activas
.get();
// Bucle para revisar cada campaña individualmente
while (campaignIterator.hasNext()) {
var campaign = campaignIterator.next(); // Obtiene la siguiente campaña
Logger.log(«Campaña: » + campaign.getName()); // Muestra el nombre de la campaña en el registro
// Si el nombre de la campaña contiene la palabra «Marca»
if (campaign.getName().includes(«Marca»)) {
campaign.pause(); // Pausa la campaña
Logger.log(«→ Campaña pausada.»); // Informa en el registro que la campaña fue pausada
}
}
}
✅ Aquí campaign es un objeto, y .pause() es un método que pausa esa campaña.
Aquí te dejo una tabla simplificada con algunos de los objetos más comunes y ejemplos de métodos que se pueden usar con ellos:
| Objeto | Método común | Descripción breve |
| AdsApp | .campaigns() | Accede a todas las campañas |
| campaign | .pause() / .enable() | Pausa o activa una campaña |
| adGroup | .keywords() / .ads() | Accede a las palabras clave o anuncios del grupo |
| keyword | .getText() / .pause() | Obtiene el texto de la keyword o la pausa |
| ad | .getHeadline() / .pause() | Muestra el titular del anuncio o lo pausa |
| campaign.getBudget() | .getAmount() / .setAmount() | Obtiene o establece el presupuesto |
🟠 Bonus: ¿Qué es Logger.log()?
Logger.log() sirve para ver resultados en la consola del script.
No afecta a las campañas, solo muestra mensajes o resultados mientras el script corre.
Logger.log(«Esto es un mensaje de prueba»);
Objetivo de la clase
RETO DEL MÓDULO
✅ Reto 1: Define una variable y úsala en una condición
🎯 Objetivo:
Crea una variable llamada presupuestoDiario con el valor 70.
Si el presupuesto es mayor o igual a 50, muestra en el log «Presupuesto suficiente».
Si es menor, muestra «Presupuesto bajo».
💡 Pista: Usa if / else y Logger.log().
✅ Reto 2: Haz un bucle para mostrar los días de la semana
🎯 Objetivo:
Crea un bucle que muestre en el log los números del 1 al 7, cada uno con el texto «Día: X».
🟢 Resultado esperado en el log:
Día: 1
Día: 2
Día: 3
…
Día: 7
✅ Reto 3: Crea una función que pause campañas (sin ejecutarla realmente)
🎯 Objetivo:
Define una función llamada pausarCampaña(nombreCampaña) que reciba el nombre de la campaña como parámetro y muestre en el log:
«Pausando la campaña: [nombre]».
➡️ Importante: Este ejercicio es solo de práctica, no pausarás campañas reales.
✅ Reto 4: Combina variables, condición y función
🎯 Objetivo:
- Crea una variable nombreCampaña = «Campaña de Prueba».
- Crea una variable presupuestoCampaña = 30.
- Si el presupuesto es menor a 50, llama a la función pausarCampaña(nombreCampaña) del reto anterior.
✅ Reto 5: BONUS – Lee campañas activas y muestralas por consola (sin pausar)
🎯 Objetivo:
Utiliza este código y trata de entender qué hace línea por línea:
var campaigns = AdsApp.campaigns()
.withCondition(«Status = ‘ENABLED'»)
.get();
while (campaigns.hasNext()) {
var campaign = campaigns.next();
Logger.log(«Campaña activa: » + campaign.getName());
}
💬 Pregunta para reflexionar:
¿En qué parte del código se obtiene cada campaña?
¿Y dónde se imprime el nombre?
🏆 SOLUCIONES RETOS PRÁCTICOS: JavaScript para Google Ads
🎯 Reto 1: Variable + Condición
function main() {
var presupuestoDiario = 70;
if (presupuestoDiario >= 50) {
Logger.log(«Presupuesto suficiente»);
} else {
Logger.log(«Presupuesto bajo»);
}
}
💡 ¿Qué hace?
- Define la variable presupuestoDiario con valor 70.
- Comprueba si es mayor o igual a 50.
- Si sí → muestra «Presupuesto suficiente».
- Si no → muestra «Presupuesto bajo».
🎯 Reto 2: Bucle (for) mostrando días de la semana
function main() {
for (var i = 1; i <= 7; i++) {
Logger.log(«Día: » + i);
}
}
💡 ¿Qué hace?
- Empieza i = 1.
- Mientras i <= 7, repite el log y suma 1 a i en cada vuelta.
- Termina cuando i llega a 8.
🎯 Reto 3: Función que muestra campaña a pausar
function pausarCampaña(nombreCampaña) {
Logger.log(«Pausando la campaña: » + nombreCampaña);
}
// Puedes probarla así:
function main() {
pausarCampaña(«Campaña de Prueba»);
}
💡 ¿Qué hace?
- Define la función pausarCampaña.
- Recibe como dato el nombre de la campaña.
- Muestra en el log el texto con el nombre.
🎯 Reto 4: Combinar variable, condición y función
function pausarCampaña(nombreCampaña) {
Logger.log(«Pausando la campaña: » + nombreCampaña);
}
function main() {
var nombreCampaña = «Campaña de Prueba»;
var presupuestoCampaña = 30;
if (presupuestoCampaña < 50) {
pausarCampaña(nombreCampaña);
} else {
Logger.log(«Presupuesto adecuado, no se pausa»);
}
}
💡 ¿Qué hace?
- Define el nombre y el presupuesto de la campaña.
- Si el presupuesto es menor de 50 → llama a la función para pausar.
- Si no → muestra un mensaje diciendo que el presupuesto es adecuado.
🎯 Reto 5: Leer campañas activas y mostrarlas por consola
function main() {
var campaigns = AdsApp.campaigns()
.withCondition(«Status = ‘ENABLED'»)
.get();
while (campaigns.hasNext()) {
var campaign = campaigns.next();
Logger.log(«Campaña activa: » + campaign.getName());
}
}
💡 ¿Qué hace?
- Usa AdsApp.campaigns() para acceder a todas las campañas.
- Con .withCondition(«Status = ‘ENABLED'») filtra solo las campañas activas.
- .get() inicia la colección de campañas.
- while (campaigns.hasNext()) recorre todas las campañas una a una.
- campaigns.next() obtiene la siguiente campaña en la lista.
- campaign.getName() recupera el nombre de esa campaña.
- Lo muestra en el log.
🟢 ¿Qué aprendiste con estos ejercicios?
| Concepto | Aplicado en el reto |
| Variables | Guardar presupuesto, nombres |
| Condiciones | Controlar cuándo pausar campañas |
| Bucles | Repetir acciones (días, campañas) |
| Funciones | Organizar acciones que se repiten |
| Objetos y métodos | Trabajar con campañas de Google Ads |

¿Quieres comentar este post?
Regístrate gratis o inicia sesión para poder comentar
Iniciar Sesión
Registrarse
Restablecer Contraseña