ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript オブジェクトを作成および呼び出すためのメソッドのコレクション_JavaScript スキル

JavaScript オブジェクトを作成および呼び出すためのメソッドのコレクション_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 16:24:481059ブラウズ

今日プロジェクトに取り組んでいるときに、JavaScript オブジェクトを作成する必要がある状況に遭遇しました。そこで、JavaScript オブジェクトを作成する 3 つの方法について外国人が書いた記事を Bing で読み、それを読んだ後にコードを入力しました。この方法がとても良いと感じたので、ここで共有したいと思います。

1. 関数を使用してオブジェクトを作成します:

コードをコピーします コードは次のとおりです:

//オブジェクトを定義
関数 動物(種類)
{
This.name="";
This.type=type;
This.introduction=function(){
return "私の名前は「 this.name 」、私は「 this.type;
に属します」 }
}
var Animal=new Animal("Poultry") //上記で作成したオブジェクトをインスタンス化します
Animal.name="小红";
alert(animal.introduction()); //その導入関数を呼び出します (この時点で、ページがポップアップします: 私の名前は暁紅です、家禽に属しています);

誰もがこの方法に精通しているはずです。ただし、この方法を使用するとパフォーマンスが低下します。ここでは、新しいキーを使用してオブジェクトをインスタンス化します。実際、新しいキーは 2 つのことを行います。まず、匿名メソッド(Animal)を定義します。 2. 電話をかけます。これは、次に紹介する方法ほど効率的ではありません。

2. オブジェクト リテラルを使用します:

翻訳が正しいかどうかはわかりませんが、後で元のアドレスをお知らせしますので、興味のある方は原文をお読みください。

コードをコピーします コードは次のとおりです:

//オブジェクトを定義
var Book=
{
name: 「紅楼夢」、
type:"文学作品",
getAuthor:function()
{
return: "私は曹雪勤の子供です!";
}
}
alert(Book.GetAuthor()); //オブジェクト メソッドを呼び出すと、次のページが表示されます: 私は曹雪琴の子供です。
Book.name="スラムダンク"; Book.name= Slam Dunk"; // オブジェクトのプロパティを変更します
alert(Book.name); //この時点で、Slam Dunk
というページが表示されます。

コードを見れば、この方法がより効率的である理由が誰もが理解できると思います。これは JavaScript のグローバル変数を定義するのと同じであるためです。インスタンス化せずに直接使用できます。しかし、これは奇妙に見えます。さて、ここで解決策を示します。 3 番目の方法を見てみましょう。

3. シングルトンモード (関数を使用したシングルトン):

これをシングルトン モードに変換するのは適切ではないかもしれません。まずコードを見てみましょう:

コードをコピーします コードは次のとおりです:

//オブジェクトを定義
var Gender=新しい関数()
{
This.type="女の子";
This.speaking=function()
{
return "I am" this.type;
}
}
alert(Gender.speaking();) //オブジェクトを使用 この時点で、「私は女の子です」というページが表示されます。

このコードを見てください。私たちのメソッド 1 と非常に似ていますか?ただし、方法 1 と同様に機能します。方法 1: オブジェクトを 1 回使用し、オブジェクトを 1 回作成します。このメソッドはオブジェクトを一度作成すると、それを永続的に使用できます。したがって、このアプローチはデザイン パターンのシングルトン パターンに非常に似ています。

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