参考にした動画
この動画で学んだこと
・関数をオブジェクトにすることができる。
・関数をオブジェクト化した関数をコンストラクター関数と呼ぶ。
・バリデーションとデバッグの違い
関数をオブジェクトにしてできること
・コンストラクター関数は型の名前を付けられる。
・コンストラクター関数の各種プロパティにバリデーションをかけられる。
・htmlでボタンをタグを複数設置したのち、プロパティを追加したい時にコンストラクター関数を設置していれば変更箇所が1箇所で済む。
関数をオブジェクトにする方法
・関数のスコープ内にthisでプロパティを代入して、newを使って関数を呼び出すと関数をオブジェクトとして利用することができる。
・functionコンストラクター|MDN
写経したコード
<html>
<body>
</body>
<script>
// User型というコンストラクター関数
function User(name,address){
this.name = name
this.address = address
this.hobby = "sleeping"
}
user = new User("tio","xxx")
console.log(user)
// オブジェクト
// personは型ではなくpersonというオブジェクトの名前を定義している。
// コンストラクター関数にすると、オブジェクトに型を作れる
// person = {
// address:"aaa",
// tel:"bbb",
// tel2:080,
// };
// 関数
function User2(name,address){
}
// バリデーション
// nameが空だったら"name is empty"というアラートを出力する
function User3(name,address){
if(name == ""){
alert("name is empty")
return
}
this.name = name
this.address = address
this.hobby = "sleeping"
}
user = new User3("","xxx")
console.log(user3)
</script>
</html>
バリデーションとデバッグの違い
・バリデーションは、ソフトウェアが正しいデータを処理し、意図した動作を行うための手段。
・デバッグはエラーの発見と修正に焦点を当てている。
・ソフトウェアの品質や安定性を向上させるためのプロセス。
結果、バリデーションとデバッグは異なる目的とアプローチを持つ。
バリデーションはデータの検証に関わり、デバッグはソフトウェアのエラーの特定と修正に関わる。
デバッグ(Debugging)
・デバッグの目的は、不具合を修正してソフトウェアの正常な動作を回復させること。
・ソフトウェアの開発やトラブルシューティングの過程で発生するエラーや問題を特定し、修正すること。
・デバッグは主にプログラムのコードやロジックの誤りを特定するために行われます。
バリデーション(validation)
・バリデーションはエラーの特定や修正ではなく、データの整合性や正確性の確保を目的としている。
・データや入力値が所定のルールに従っているかどうかを検証するプロセス。
・バリデーションの目的は、正しいデータの受け入れと不正なデータの排除すること。