JavaScript を使用してクラスとオブジェクトを作成する方法は数多くあります。1. オリジナルの作成方法、2. ファクトリ メソッド パターン、3. コンストラクター メソッド パターン、4. 動的プロトタイプ メソッド。以下に例を詳しく見てみましょう
次に、JavaScript でクラスとオブジェクトを作成するいくつかの方法をまとめます:
1. オリジナルの作成方法:
<script type="text/javascript"> var person = new Object(); person.name="Amy"; person.sex="Woman"; person.show=function(){ document.write("name is: "+this.name+" ; sex is:"+this.sex); } person.show(); </script>
オリジナルの作成方法は、オブジェクトに慣れている人にとっては受け入れがたいものです。このカプセル化は、「オブジェクト名」+「.」の形式で実行されます。これは、オブジェクト名に続く属性とメソッドが所有されるものであることを意味します。このオブジェクト (例: person ) は、age 属性を追加するなど、引き続きメソッドと属性を追加できます。この作成方法により、Java プログラミングに慣れることができます。不快。元の作成メソッドをさらに「カプセル化」できます。次のステップを参照してください:
2. ファクトリ メソッド パターン:
<script type="text/javascript"> function personFactory(name,age,sex){ var ob=new Object(); ob.name=name; ob.age=age; ob.sex=sex; ob.show=function(){ document.write(ob.name+" "+ob.age+" "+ob.sex); } return ob; } var person=personFactory("Amy",21,"Woman"); person.show(); </script>
ファクトリ メソッド パターンは、元の作成メソッドをカプセル化します。 person 参照変数を追加すると、person は作成されたオブジェクトを参照できますが、これは完全ではありません。オブジェクトを作成し、そのオブジェクトを使用して show() メソッドを呼び出すたびに、新しい show() 関数が作成されます。最適化方法は、次のように show をファクトリの外に置くことです:
<script type="text/javascript"> function show(){ document.write(this.name+" "+this.age+" "+this.sex); } function personFactory(name,age,sex){ var ob=new Object(); ob.name=name; ob.age=age; ob.sex=sex; ob.show=show; return ob; } var person=personFactory("Amy",22,"Woman"); person.show(); </script>
機能的に言えば、上記のコードは関数の再利用の問題を解決しますが、プレゼンテーション方法は人々がよく知っているオブジェクトを作成するようなものではありません。 Java ではまだ不快感を感じます。次のステップを参照してください:
3. コンストラクター パターン:
<script type="text/javascript"> function person(name,age,sex){ this.name=name; this.age=age; this.sex=sex; this.show=function(){ document.write(this.name+" "+this.age+" "+this.sex); document.write("<br>"); } } var per=new person("Amy",22,"Woman"); per.show(); </script>
上記のコードの作成方法は、Java のクラスとオブジェクトの作成方法とほぼ同じであり、クラスの属性とメソッドをカプセル化して使用します。 new キーワードを使用してオブジェクトを作成し、返します。これは Java でクラスとオブジェクトを作成するプロセスではありませんか? はい、これはこのプロセスですが、この方法で作成されたオブジェクトが show メソッドを呼び出す場合、最適化することもできます。 show 関数もすぐに作成できますが、すべてのオブジェクトに共通のメソッドはどうでしょうか? Java クラスの静的メソッドと同様に、すべてのオブジェクトは同じ静的メソッドを使用します。答えは「はい」です。次のステップを参照してください:
4. 動的プロトタイプメソッド:
<script type="text/javascript"> function Person(name,age,sex){ this.name=name; this.age=age; this.sex=sex; if(typeof Person.tag == "undefined"){ Person.prototype.show=function(){ document.write(this.name+" "+this.age+" "+this.sex); document.write("<br>"); } Person.tag=true; } } var per=new Person("Peter",22,"Man"); per.show(); </script>
ここでは、new でオブジェクトが作成されると、上から順に Person 関数ブロック内の if 判定ステートメントが実行されます。下、タグ変数から始まります もちろん定義されていないので、if 文ブロックの内容が実行されます:
Person.prototype.show=function(){ document.write(this.name+" "+this.age+" "+this.sex); document.write("<br>"); }
この内容の意味は、 Person クラスに属する show メソッドを作成することです。クラス メソッドは、Java の静的変更メソッドに相当します。これは単一オブジェクトのメソッドではないため、すべてのオブジェクトが同じメソッドを呼び出すことができます。この方法では、独自の show 関数を毎回作成する必要はありません。別のオブジェクトがメソッドを呼び出すと、スペースと時間が節約されます。ここで説明しますと、「クラス名.prototype.property/method」メソッドで構築されるプロパティやメソッドは、Java の static で変更された変数やメソッドに相当し、単一のオブジェクトではなく、クラス全体に属します。 、すべてのオブジェクトが共有されます。
上記は私があなたのためにまとめたものです。
関連記事:
以上がJavaScript でクラスとオブジェクトを作成する (グラフィック チュートリアル)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

メモ帳++7.3.1
使いやすく無料のコードエディター

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

WebStorm Mac版
便利なJavaScript開発ツール
