Pengesahan Masukan, Asas Pelolosan
Sahkan dan normalkan masukan dengan senarai benarkan serta pengawal kecil; loloskan aksara berisiko sebelum memaparkan teks.
Pengesahan Masukan, Asas Pelolosan ialah pelajaran Akademi JavaScript percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi JavaScript, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.
Gambaran keseluruhan
Matlamat: Jadikan masukan mudah dan selamat.
- Gunakan klausa pengawal untuk menolak lebih awal
- Utamakan senarai yang dibenarkan berbanding peraturan yang kabur
- Normalkan kepada bentuk yang ringkas
- Lepaskan aksara khas sebelum memaparkan teks

Asas pengawal nombor
Tambahkan pengawal ringkas: semak jenis, semak julat dan normalkan kepada nilai akhir.
// Validate age: number and range guard
function parseAge(input) {
// trim and parse
const n = Number(input);
if (!Number.isFinite(n)) return null; // reject non-numbers
if (n < 0 || n > 130) return null; // reject out-of-range
return Math.floor(n); // normalize to integer
}
console.log("age ok:", parseAge("21"));
console.log("age bad:", parseAge("twenty"));

Jadikan selamat untuk dipaparkan
Sebelum memaparkan teks pengguna, lindungi aksara khas supaya antara muka menganggapnya sebagai teks biasa.
// Escape a few risky characters before displaying in HTML contexts
function escapeText(s) {
if (typeof s !== "string") return "";
return s
.replaceAll("&", "&")
.replaceAll("<", "<")
.replaceAll(">", ">")
.replaceAll("\"", """)
.replaceAll("'", "'");
}
console.log("escaped:", escapeText("<b>Hello & bye</b>"));

Senarai benarkan dalam amalan
Utamakan senarai benarkan untuk himpunan tetap (seperti kod atau peranan). Normalkan huruf besar-kecil dan jarak.
// Allowlist example: only certain country codes
const ALLOWED = new Set(["TR", "US", "DE", "GB"]);
function parseCountry(code) {
if (typeof code !== "string") return null;
const up = code.trim().toUpperCase();
if (!ALLOWED.has(up)) return null; // reject unknown
return up; // normalized
}
console.log("country ok:", parseCountry("tr"));
console.log("country bad:", parseCountry("xx"));

Pengesah objek kecil
Semak jenis dan had, kemudian kembalikan bentuk yang dinormalkan supaya seluruh kod anda boleh mempercayainya.
// Validate a tiny user object and normalize
function validateUser(input) {
if (typeof input !== "object" || input === null) return null;
const nameOk = typeof input.name === "string" && input.name.trim().length >= 1 && input.name.trim().length <= 40;
const ageOk = parseAge(input.age) !== null;
if (!nameOk || !ageOk) return null;
return {
name: input.name.trim(),
age: parseAge(input.age)
};
}
console.log("user ok:", validateUser({ name: " Ayla ", age: "22" }));
console.log("user bad:", validateUser({ name: "", age: "old" }));

Amalan perlindungan yang baik
Petua:
- Lakukan pengesahan pada sempadan (masukan pengguna, rangkaian).
- Gunakan senarai benarkan, julat dan semakan jenis.
- Normalkan sekali; pastikan bahagian lain kekal mudah.
- Lindungi teks sebelum memaparkannya kepada pengguna.

Kuiz asas masukan defensif
Semakan ringkas: Corak masukan selamat.

Imbas kembali
Imbas kembali: Lindungi lebih awal, gunakan senarai benarkan, normalkan kepada bentuk selamat dan lindungi sebelum dipaparkan. Pastikan setiap langkah kecil dan mudah dibaca.

Pelajari JavaScript dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 59
- Pelajaran
- 200
Soalan Lazim
Adakah pelajaran “Pengesahan Masukan, Asas Pelolosan” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Akademi JavaScript, termasuk “Pengesahan Masukan, Asas Pelolosan”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.
Apakah yang akan saya pelajari dalam “Pengesahan Masukan, Asas Pelolosan”?
Sahkan dan normalkan masukan dengan senarai benarkan serta pengawal kecil; loloskan aksara berisiko sebelum memaparkan teks. Anda berlatih Akademi JavaScript menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Akademi JavaScript?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi JavaScript di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 3.
Berapa lamakah pelajaran “Pengesahan Masukan, Asas Pelolosan” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi JavaScript ini?
Ya. Setiap pelajaran Akademi JavaScript menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Pengesahan Masukan, Asas Pelolosan
- Penggabungan Objek Selamat; Pembekuan dan Pengedapan
- Sempadan Ralat (Konseptual) tanpa Rangka Kerja