JavaScript での情報のカプセル化
コーディングする前に、次の用語を理解する必要があります。
カプセル化: 内部データの表現と実装の詳細を隠す
プライベート プロパティとメソッド: 外部のユーザーのみが使用できます。パブリック インターフェイスによりアクセスと操作が可能
スコープ: JavaScript では関数のみがスコープを持ち、関数内で定義されたプロパティとメソッドには外部からアクセスできません
特権メソッド: 関数内で宣言され、関数内 変数 (属性) メソッドはより多くのメモリを消費します。
function person()
{
/*
* プライベートデータを宣言します
* ニックネーム、年齢、メールアドレス
*/
var ニックネーム、年齢、メールアドレス; 🎜>/*
* プライベート データにアクセスする必要があるメソッド (特権メソッド)
* 生成された各インスタンスは、特権メソッドの新しいコピーを生成します
*/
this.setData = function(pNickName 、pAge、pEmail)
{
nickName = pNickName;
email = pEmail
}; >return [nickName, age, email];
}
}
/*
* プライベートデータへの直接アクセスを必要としないメソッド (パブリックメソッド)
* インスタンスの数は問いません生成され、パブリック メソッドはメモリ内にのみ存在します。 コピー 1 つ
*/
person.prototype = {
showData: function()
{
alert("個人情報:" this.getData( ).join());
}
}
外部コードはプライベート メソッドまたはパブリック メソッドを通じて内部プロパティにアクセスします
コードをコピーします
コードは次のとおりです:
デモコード:
[Ctrl A すべて選択 注: を実行するために更新する必要があります]