ホームページ ウェブフロントエンド jsチュートリアル JavaScriptでクラスを定義する方法_基礎知識

JavaScriptでクラスを定義する方法_基礎知識

May 16, 2016 pm 04:36 PM
javascript 意味 親切

これは私が最初に書いた方法です:

function Dog(){
  this.name = 'hachi';
}

Dog.prototype = {
  makeNoise:function(){
    alert('wangwangwang');
  }
};

ログイン後にコピー

後で、もう少し複雑で不必要に思われる別の書き方を見つけました。

function Dog(){
  var privateVariable = 'secret';

  var fn = function(){
    //...
  }

  fn.prototype = {
    makeNoise:function(){
      alert('wangwangwang');
    }
  }

  return fn;
}

ログイン後にコピー

ここでの Dog 関数は実際にはクラス作成関数であり、実際の Dog クラスを返します。
これを行う利点は、カプセル化が向上することだと思います。
たとえば、ここでの privateVariable はプライベート変数です:

var d = new Dog;
d.privateVariable //undefined
ログイン後にコピー

さらに、最初の例の最後に文を追加すると、

Dog.prototype = {
  //e...WTF??
}
ログイン後にコピー

こうすることで、犬はもう犬ではなくなります~

その後の理解:
新しいクラスを作成する上記のメソッドは、プロトタイプ オブジェクトを直接オーバーライドします。このようにして、プロトタイプの元の組み込み属性 (引数、呼び出し、適用など) はなくなります。
新しいクラスを作成する次の方法の方が良いと思われます:

var Dog = function(name){
  this.name = name;
  var privateVariable = 'you cannot see me.';
  this.getPrivate = function(){return privateVariable;};
}
ログイン後にコピー

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

MySQL複合主キーの定義と機能 MySQL複合主キーの定義と機能 Mar 15, 2024 pm 05:18 PM

MySQL の複合主キーは、テーブル内の複数のフィールドで構成される主キーを指し、各レコードを一意に識別するために使用されます。単一の主キーとは異なり、複合主キーは複数のフィールドの値を組み合わせて形成されます。テーブルを作成するときに、複数のフィールドを主キーとして指定することにより、複合主キーを定義できます。複合主キーの定義と機能を示すために、最初に users という名前のテーブルを作成します。このテーブルには、id、ユーザー名、電子メールの 3 つのフィールドが含まれます。id は自動インクリメントされる主キー、ユーザーです。

ディスカスとは何ですか? Discuzの定義と機能紹介 ディスカスとは何ですか? Discuzの定義と機能紹介 Mar 03, 2024 am 10:33 AM

「Discuz の探索: 定義、機能、およびコード例」 インターネットの急速な発展に伴い、コミュニティ フォーラムは人々が情報を取得し、意見を交換するための重要なプラットフォームになりました。多くのコミュニティ フォーラム システムの中でも、Discuz は中国でよく知られたオープン ソース フォーラム ソフトウェアとして、大多数の Web サイト開発者や管理者に好まれています。それで、ディスカスとは何ですか?どのような機能があり、Web サイトにどのように役立つのでしょうか?この記事では、Discuz について詳しく紹介し、読者がDiscuz についてさらに学ぶのに役立つ具体的なコード例を添付します。

簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 簡単な JavaScript チュートリアル: HTTP ステータス コードを取得する方法 Jan 05, 2024 pm 06:08 PM

JavaScript チュートリアル: HTTP ステータス コードを取得する方法、特定のコード例が必要です 序文: Web 開発では、サーバーとのデータ対話が頻繁に発生します。サーバーと通信するとき、多くの場合、返された HTTP ステータス コードを取得して操作が成功したかどうかを判断し、さまざまなステータス コードに基づいて対応する処理を実行する必要があります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法を説明し、いくつかの実用的なコード例を示します。 XMLHttpRequestの使用

PHP インターフェースの概要とその定義方法 PHP インターフェースの概要とその定義方法 Mar 23, 2024 am 09:00 AM

PHP インターフェースの概要とその定義方法 PHP は、Web 開発で広く使用されているオープンソースのスクリプト言語であり、柔軟性があり、シンプルで強力です。 PHP では、インターフェイスは複数のクラス間で共通のメソッドを定義し、ポリモーフィズムを実現し、コードをより柔軟で再利用可能にするツールです。この記事では、PHP インターフェイスの概念とその定義方法を紹介し、その使用法を示す具体的なコード例を示します。 1. PHP インターフェイスの概念 インターフェイスはオブジェクト指向プログラミングにおいて重要な役割を果たし、クラス アプリケーションを定義します。

全角文字の定義と使用 全角文字の定義と使用 Mar 25, 2024 pm 03:33 PM

全角文字とは何ですか?コンピュータ エンコード システムでは、全幅文字は 2 つの標準文字位置を占める文字エンコード方法です。これに対応して、標準の文字位置を占める文字エンコード方式を半角文字と呼びます。全角文字は通常、中国語、日本語、韓国語、その他のアジアの文字の入力、表示、印刷に使用されます。中国語の入力方法やテキスト編集では、全角文字と半角文字の使用シーンが異なります。全角文字の使用 中国語の入力方法: 中国語の入力方法では、通常、漢字や記号などの中国語の文字を入力するために全角文字が使用されます。

JavaScript で HTTP ステータス コードを簡単に取得する方法 JavaScript で HTTP ステータス コードを簡単に取得する方法 Jan 05, 2024 pm 01:37 PM

JavaScript で HTTP ステータス コードを取得する方法の紹介: フロントエンド開発では、バックエンド インターフェイスとの対話を処理する必要があることが多く、HTTP ステータス コードはその非常に重要な部分です。 HTTP ステータス コードを理解して取得すると、インターフェイスから返されたデータをより適切に処理できるようになります。この記事では、JavaScript を使用して HTTP ステータス コードを取得する方法と、具体的なコード例を紹介します。 1. HTTP ステータス コードとは何ですか? HTTP ステータス コードとは、ブラウザがサーバーへのリクエストを開始したときに、サービスが

「PHP によるオブジェクト指向プログラミング入門: 概念から実践まで」 「PHP によるオブジェクト指向プログラミング入門: 概念から実践まで」 Feb 25, 2024 pm 09:04 PM

オブジェクト指向プログラミングとは何ですか?オブジェクト指向プログラミング (OOP) は、現実世界のエンティティをクラスに抽象化し、オブジェクトを使用してこれらのエンティティを表すプログラミング パラダイムです。クラスはオブジェクトのプロパティと動作を定義し、オブジェクトはクラスをインスタンス化します。 OOP の主な利点は、コードの理解、保守、再利用が容易になることです。 OOP の基本概念 OOP の主な概念には、クラス、オブジェクト、プロパティ、メソッドが含まれます。クラスはオブジェクトの設計図であり、オブジェクトのプロパティと動作を定義します。オブジェクトはクラスのインスタンスであり、クラスのすべてのプロパティと動作を備えています。プロパティは、データを保存できるオブジェクトの特性です。メソッドは、オブジェクトのデータを操作できるオブジェクトの関数です。 OOP の利点 OOP の主な利点は次のとおりです。 再利用性: OOP はコードをより高度なものにすることができます。

iOS 17.4でiPhoneのアプリアイコンをカスタマイズする方法 iOS 17.4でiPhoneのアプリアイコンをカスタマイズする方法 Mar 15, 2024 pm 01:43 PM

iOS 17.4 で iPhone のアプリアイコンをカスタマイズする方法 iOS 17.4 アップデートにより、iPhone ホーム画面のカスタマイズは、ユーザーが自分のデバイスをパーソナライズするための魅力的な方法になりました。このアップデートでは、微妙だが重要な変更が加えられ、ユーザーがこれらの変更をナビゲートする方法を理解しやすくなりました。アプリのアイコンをカスタマイズすることで、ユーザーは自分の電話インターフェースに個性を加えることができます。 Kayla LeRoux による以下のビデオは、iPhone でこれを行う方法を示しており、プロセス全体がはるかに簡単になります。なぜカスタマイズするのか? iOS 17.4 アップデートにより、Apple は携帯電話のホーム画面をカスタマイズするプロセスを簡素化し、ユーザーが自分のスタイルや好みに合う方法でホーム画面を簡単にカスタマイズできるようにしました。

See all articles