ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript入門チュートリアル(12) jsオブジェクトプログラミング_基礎知識

JavaScript入門チュートリアル(12) jsオブジェクトプログラミング_基礎知識

WBOY
リリース: 2016-05-16 18:56:15
オリジナル
1005 人が閲覧しました

with ステートメントは、ステートメントまたはステートメントのグループのデフォルト オブジェクトを指定します。
使用法:
with () ;
with ステートメントは、通常、特定の状況で記述しなければならないコードの量を短縮するために使用されます。以下の例では、Math が繰り返し使用されていることに注意してください。
x = Math.cos(3 * Math.PI) Math.sin(Math.LN10);
y = Math.tan(14 * Math.E) );
with ステートメントを使用すると、コードが短くなり、読みやすくなります:

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

with (Math) {
x = cos(3 * PI) sin(LN10);
y = Tan(14 * E);

このオブジェクトは「現在の」オブジェクトを返します。異なる場所では、これは異なるオブジェクトを表します。これが JavaScript の「メイン プログラム」で (関数やイベント ハンドラーではなく) 使用される場合は、ウィンドウ オブジェクトを表します。これが with ステートメント ブロックで使用される場合は、with で指定されたオブジェクトを表します。これをイベント ハンドラーで使用すると、イベントが発生したオブジェクトを表します。
これの一般的な使用法:


...
function check(formObj) {
...
}
...
..>
...
<フォーム ...>
...

...

...



この使用法は、有効性をすぐに確認するためによく使用されますフォーム入力の。
カスタム コンストラクター Array() や Image() などのコンストラクターを使用して変数を構築できることはすでに知っています。実際、独自のコンストラクターを作成することもできます。カスタム コンストラクターも関数を使用します。これを関数内で使用してプロパティを定義します。


コードをコピーします コードは次のとおりです。関数 <コンストラクター名> ; パラメータ>)] {
...
this.
...
}


新しいコンストラクター キーワードを使用して変数を構築します。
var = new [()];
変数を構築すると、
は変数名になります。オブジェクトには独自のプロパティがあり、これを使用して関数でプロパティが設定されます。
次は、ブラウザーの詳細を収集するためにオンラインで見つかるカスタム コンストラクターの例です:


function Is() {
varagent = navigator.userAgent.toLowerCase();
this.major = parseInt(navigator.appVersion); //メジャーバージョン番号
this .minor = parseFloat(navigator.appVersion);//完全なバージョン番号
this.ns = ((agent.indexOf('mozilla')!=-1) &&
((agent.indexOf( 'spoofer' )==-1) && //Netscape かどうか
(agent.indexOf('compatibility') == -1)));
this.ns2 = (this.ns && (this.major == 3) )); // Netscape 2 かどうか
this.ns3 = (this.ns && (this.major == 3)); // Netscape 3 かどうか
this.ns4b = (this.ns && (this.nsマイナー < 4.04)); // Netscape 4 が下位バージョンであるかどうか
this.ns4 = (this.ns && (this.major >= 4)); // Netscape 4 が上位バージョンであるかどうか
this.ie = (agent.indexOf("msie") != -1) //IE かどうか
this.ie3 = (this.ie && (this.major == 2)); 3
this.ie4 = (this.ie && (this.major >= 4)); //IE 4
this.op3 = (agent.indexOf("opera") != -1) ; //Opera 3 かどうか
this.win = (agent.indexOf("win")!=-1) //Windows バージョンかどうか
this.mac = (agent.indexOf(" mac")!= -1); //Macintoshのバージョンかどうか
this.unix = (agent.indexOf("x11")!=-1); //Unixのバージョンかどうか
}
var is = new Is() ;


このコンストラクターはブラウザー情報を非常に完全に収集します。オブジェクトの多くの属性 (メジャー、マイナー、ns、つまり win、mac など) が定義されていることがわかります。それらの意味については、上記の注記を参照してください。 is 変数を Is() オブジェクトとして定義すると、if (is.ns) の形式を使用してブラウザの情報を簡単に知ることができます。このコンストラクターからは、通常の JavaScript ステートメント (上記の例では var ステートメント) も使用できることがわかります。
パラメータを使用する別のコンストラクターを見てみましょう:


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

function myFriend(theName, thegender,theAge,birthOn,theJob) {
this.name = theName;
this.is Male = (gender.toLowerCase == '男性'); this.age = theAge;
this.birthday = new Date(birthOn);
this.job = theJob
}
var Stephen = new myFriend('Stephen', '男性', 18, 'Dec 22, 1982', 'Student');

このコンストラクターからは、パラメーターの使用法がわかるだけでなく、異なる属性が異なるデータ型を使用できることもわかります (上記の 5 つの例)属性は文字列、ブール値、数値、日付、文字列です) また、コンストラクター内で属性を「構築」するためにコンストラクターを使用できることも確認しました。無限ループを回避するために十分な「保護手段」が使用されている場合は、コンストラクター自体を使用して独自のプロパティを構築できます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート