Vietnamese

Console log and error

JavaScript Console or Browser console is build-in object in JavaScript which gives access to browser debugging console. console can be used to print output, check errors and warnings in console.

For frontend and web developer, its is recommended to open console window always. We can call global functions, check variables and syntax errors in console.

Open Browser Console

Open console in browser
Browser Console Shortcut for Windows / Linux Console Shortcut for Mac
Chrome Ctrl + Shift + j Cmd + Alt + j.
Firefox Ctrl + Shift + k Cmd + Alt + k
Microsoft Edge Ctrl + Shift + j Cmd + Alt + j.
Internet Explorer Ctrl + 2 or F12 NA
Edge Ctrl + 2 or F12 Cmd + Alt + j
Safari Ctrl + Alt + c Cmd + Alt + c
    document.addEventListener("DOMContentLoaded", function () { /* -------- Date Helpers -------- */ function addDays(date, days) { const d = new Date(date); d.setDate(d.getDate() + days); return d; } function isWorkingDay(date) { const day = date.getDay(); // 0=Sun, 6=Sat return day !== 0 && day !== 6; // Mon-Fri only } function addWorkingDays(startDate, days) { let current = new Date(startDate); let remaining = days; while (remaining > 0) { current = addDays(current, 1); if (isWorkingDay(current)) { remaining--; } } return current; } function formatDate(date) { return date.toISOString().split('T')[0]; // YYYY-MM-DD } /* -------- DOM Wiring -------- */ const calcButton = document.getElementById("calcBtn"); const daysInput = document.getElementById("daysInput"); const typeContainer = document.getElementById("typeContainer"); const dayTypeSelect = document.getElementById("dayType"); const resultDiv = document.getElementById("result"); if (!calcButton || !daysInput || !typeContainer || !dayTypeSelect || !resultDiv) { console.error("Required DOM elements missing"); return; } let enteredDays = 0; calcButton.addEventListener("click", function () { enteredDays = parseInt(daysInput.value, 10); if (!Number.isInteger(enteredDays) || enteredDays < 0) { resultDiv.textContent = "Please enter a valid non-negative integer."; resultDiv.style.color = "red"; return; } typeContainer.style.display = "block"; dayTypeSelect.value = ""; resultDiv.textContent = ""; }); dayTypeSelect.addEventListener("change", function () { if (enteredDays === 0) return; const today = new Date(); let resultDate; if (dayTypeSelect.value === "working") { resultDate = addWorkingDays(today, enteredDays); } else { resultDate = addDays(today, enteredDays); } const formatted = formatDate(resultDate); resultDiv.textContent = `Result date: ${formatted}`; resultDiv.style.color = "green"; // Reset enteredDays = 0; typeContainer.style.display = "none"; dayTypeSelect.value = ""; daysInput.value = ""; }); });