バリデーション(簡易) — if (!data.name) throw new Error('name required')
プログラムでは「入力データが正しいかどうか」を確認する処理が必要です。これを バリデーション(validation) と呼びます。
初心者は「データに必要な値が入っているかチェックして、なければエラーを出す」と覚えると理解しやすいです。
基本のコード例
function saveUser(data) {
if (!data.name) {
throw new Error('name required'); // nameがないとエラー
}
console.log("保存しました:", data.name);
}
saveUser({ name: "Aki" }); // OK
saveUser({}); // エラー: name required
JavaScriptif (!data.name)→data.nameが存在しない(空や未定義)なら true。throw new Error('...')→ エラーを発生させて処理を止める。
よく使うテンプレート集
必須項目チェック
if (!data.email) throw new Error("email required");
if (!data.password) throw new Error("password required");
JavaScript数値の範囲チェック
if (data.age < 0 || data.age > 120) {
throw new Error("age must be between 0 and 120");
}
JavaScript文字列の長さチェック
if (data.username.length < 3) {
throw new Error("username too short");
}
JavaScript例題: ユーザー登録フォームの簡易バリデーション
function registerUser(data) {
if (!data.name) throw new Error("name required");
if (!data.age) throw new Error("age required");
if (data.age < 18) throw new Error("must be 18 or older");
console.log("登録成功:", data);
}
registerUser({ name: "Mika", age: 20 }); // OK
registerUser({ name: "Ken", age: 15 }); // エラー: must be 18 or older
JavaScript- 効果: 必須項目がない場合や条件を満たさない場合にエラーを出せる。
実務でのコツ
- 簡易バリデーション: 小規模なコードなら
if+throwで十分。 - 複雑なバリデーション: 大規模なプロジェクトではライブラリ(AJV, Joi など)を使うと便利。
- ユーザー向けメッセージ: 実際のアプリでは
throwの代わりに「入力エラーです」と表示することが多い。
練習問題(商品データチェック)
function addProduct(data) {
if (!data.id) throw new Error("id required");
if (!data.name) throw new Error("name required");
if (data.price <= 0) throw new Error("price must be positive");
console.log("商品追加:", data);
}
addProduct({ id: "p1", name: "Laptop", price: 120000 }); // OK
addProduct({ id: "p2", price: -100 }); // エラー: name required / price must be positive
JavaScript直感的な指針
if (!data.xxx)→ 値がなければエラー。throw new Error('...')→ エラーを発生させる。- 簡易チェックに便利。
- 初心者は「必須項目」「範囲」「文字数」で練習すると理解が深まる。
これを覚えれば「入力データを簡単にチェック」できるようになり、バグや不正なデータを防ぐことができます。
