JS Advanced Notes_JavaScript スキル
JS の詳細
1. JS データ型
1. 基本型
JS には次の 5 つの基本型があります。
1) 未定義。値は 1 つだけ、未定義です。変数が定義されているが、値が割り当てられていない場合、システムはデフォルトでその変数に未定義の値を割り当てます。
2) 無効です。また、値は null だけです。これは参照型であり、オブジェクトを保存することを目的とした変数がさまざまな理由でオブジェクトを指していない場合、通常はその変数に null の値を割り当てることができます。
3) 数字。数値型は、C# における整数と浮動小数点型のコレクションです。その具体的な型は、一般的に、割り当てられる値の型です。また、var num = 1.0; このとき、num は整数型であり、小数点以下が 0 以外の正確な値がある場合にのみ浮動小数点型になることに注意してください。 Number 型に関するその他の知識ポイントは次のとおりです。 NaN は、値が数値ではないことを意味します。 isNaN() は、受信した値が Number 型であると判断できます。 parseInt() は、受信したパラメーターを数値型に変換できます。文字列が数値型以外の場合、その文字列は自動的に削除され、parseInt("123blue") の文字列の青い部分は無視されます。メソッドは、受信パラメータを整数型に変換しようとしていると理解できます。変換できない場合、変換できない部分は無視されます。 parseFloat() メソッドは parseInt() メソッドに似ています。
4) ブール値。 Boolean 型は、C# の bool 型と同様に、true と false の 2 つの値を持ちますが、C# では、0 が False に対応し、1 が true に対応するなど、数値との対応関係はありません。
5)文字列。 string型には、0~16ビットのUNICODEコードからなる文字列が格納されます。
2. 複合型
1) オブジェクト型。これは JS の最上位の「親クラス」です (JS にはクラスの概念がなく、理解を容易にするためのものであるため) これはデータとメソッド (関数) のコレクションですが、そうではありません。従来のオブジェクト指向言語をサポートするクラスとインターフェイスを備えています。オブジェクト型は、本質的には、コレクションに似た、json 形式のキーと値のペアの順序なしリストです。これには、次の 7 つのメソッドが含まれています。
constructor() Constructor?
hasOwnProperty(propertyName) プロパティが現在のオブジェクト内にあるかどうかを確認します。
isPrototypeOf(object) オブジェクトがオブジェクトのプロトタイプであるかどうかを確認します。
propertyIsEnumerable(propertyName) プロパティが for- を使用してループできるかどうかを確認します。 in
toString( )
valueOf()
オブジェクトを作成するには、次のような方法があります。
新しいキーワードによって: var s = new Object(); =27;
JS による単純な定義: var s = {};
オブジェクトのリテラル表記: var s = {"name":"james", " age":"27"};追記:json形式のデータのキーは、値が文字列でない場合はダブルクォーテーションで囲む必要はありません。不要なトラブルを避けるために、キーと値の両方を二重引用符で囲むことをお勧めします。
Object オブジェクトのプロパティにアクセスするメソッド:
s.name 直接クリックします。
s["name"]; 角括弧を使用する利点は (インデクサーと同様)、変数を通じてプロパティに動的にアクセスできることです。 ) 配列型。これはデータ
の順序付きリストです。これは他の配列とは異なります。
配列要素は任意の型にすることができ、同じ配列の要素型も異なる可能性があります。これは List
関数 sum( x, y) {
alert(this);
return x y;
//window.sum(1,2); ) {
callS.callSum1(1, 2);
}
callSum1 = function (x, y) {
alert(this); var s = sum.apply( this, argument);
//sum(1, 2);
return s;
call() メソッドも同様です上記の apply() メソッド
へ この 2 つのメソッドは継承されず、関数のスコープを拡張できます。これの最大の利点は、オブジェクトとメソッドが結合関係を持つ必要がないことです。両方によって渡される最初のパラメータは変更されるスコープであり、apply によって渡される 2 番目のパラメータはパラメータ配列であり、呼び出しでは各名前付きパラメータに渡されます。
2. 値の型と参照型
非常に多くの基本型 (null を除くすべての値型) と複合型 (基本的にすべての参照型) について説明しましたが、言語設計者が値の型と参照型を設計する理由を理解する必要があります。 。両者の違いは何ですか?
2. 値型は次のような値のみを格納できます。整数と文字列は待ちます。参照型はオブジェクトのヒープ アドレスを格納できるため、複数の変数が同じオブジェクトを指すことができます。
3. 最も重要な点は、参照型によりスタックのストレージ プレッシャーが軽減されることです (値型はスタック)。
4. JS 構文では、基本データ型は属性を動的に追加できませんが、参照データ型は属性を動的に追加できます。
3. 型を検出するためのキーワード
1.typeof
基本型の型を判定し、true または false を返す
2.instanceof
複合(参照)型の型を判定し、true を返すまたは false
基本型を決定するために使用すると、常に false が返されます。
4. eval() メソッド
eval() メソッドは非常に強力で、パーサーと同等です。パラメータは 1 つだけ受け入れられ、それは実行される JS コード文字列です。パーサーは eval() を見つけると、eval() 内のパラメータを解析し、eval が実行される場所に挿入します。その効果は、対応する場所に JS コードを直接記述することと同じです。
5. オブジェクトの作成
1) 単純なファクトリ パターン
2) コンストラクター パターン。各インスタンスにはすべてのメソッドが含まれているため、メモリが無駄に消費されます。
3) プロトタイプモード。各インスタンスにメソッドを保存しなくても、すべてのインスタンスがメソッドを呼び出せるように、プロトタイプにメソッドを保存します。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック











JavaScript文字列置換法とFAQの詳細な説明 この記事では、javaScriptの文字列文字を置き換える2つの方法について説明します:内部JavaScriptコードとWebページの内部HTML。 JavaScriptコード内の文字列を交換します 最も直接的な方法は、置換()メソッドを使用することです。 str = str.replace( "find"、 "置換"); この方法は、最初の一致のみを置き換えます。すべての一致を置き換えるには、正規表現を使用して、グローバルフラグGを追加します。 str = str.replace(/fi

このチュートリアルでは、カスタムGoogle検索APIをブログまたはWebサイトに統合する方法を示し、標準のWordPressテーマ検索関数よりも洗練された検索エクスペリエンスを提供します。 驚くほど簡単です!検索をyに制限することができます

それで、あなたはここで、Ajaxと呼ばれるこのことについてすべてを学ぶ準備ができています。しかし、それは正確には何ですか? Ajaxという用語は、動的でインタラクティブなWebコンテンツを作成するために使用されるテクノロジーのゆるいグループ化を指します。 Ajaxという用語は、もともとJesse Jによって造られました

この記事シリーズは、2017年半ばに最新の情報と新鮮な例で書き直されました。 このJSONの例では、JSON形式を使用してファイルに単純な値を保存する方法について説明します。 キー価値ペア表記を使用して、あらゆる種類を保存できます

コードプレゼンテーションを強化する:開発者向けの10個の構文蛍光物 ウェブサイトやブログでコードスニペットを共有することは、開発者にとって一般的な慣行です。 適切な構文ハイライターを選択すると、読みやすさと視覚的な魅力を大幅に改善できます。 t

楽なWebページレイアウトのためにjQueryを活用する:8本質的なプラグイン jQueryは、Webページのレイアウトを大幅に簡素化します。 この記事では、プロセスを合理化する8つの強力なjQueryプラグイン、特に手動のウェブサイトの作成に役立ちます

この記事では、JavaScriptとJQuery Model-View-Controller(MVC)フレームワークに関する10を超えるチュートリアルの厳選された選択を紹介します。これは、新年にWeb開発スキルを向上させるのに最適です。 これらのチュートリアルは、Foundatioのさまざまなトピックをカバーしています

コアポイント これは通常、メソッドを「所有」するオブジェクトを指しますが、関数がどのように呼び出されるかに依存します。 現在のオブジェクトがない場合、これはグローバルオブジェクトを指します。 Webブラウザでは、ウィンドウで表されます。 関数を呼び出すと、これはグローバルオブジェクトを維持しますが、オブジェクトコンストラクターまたはそのメソッドを呼び出すとき、これはオブジェクトのインスタンスを指します。 call()、apply()、bind()などのメソッドを使用して、このコンテキストを変更できます。これらのメソッドは、与えられたこの値とパラメーターを使用して関数を呼び出します。 JavaScriptは優れたプログラミング言語です。数年前、この文はそうでした
