まず、詳細や言語スキル
1、typeofを、未定義の和はnull
オペレータtypeof演算変数のデータ・タイプを検出します。
ヌルヌルは「何も」で、未定義の手段がない値を意味しません。
図2に示すように、データ型の変換
(1)JavaScript関数を使用して
JavaScriptを介して、(2)自動変換自体
3、正規表現
構文:/正規表現の主題/修飾子(オプション)
I(ケースを無視する)、G(グローバルマッチング)において、m(多重線と一致)を含む修飾子。
一般的な方法:検索()と交換してください()。
4、リフティング(巻き上げ)
可変リフト:唯一の文が定義されていない強化するために推進されるだろうことに注意して、変数が最上位のスコープに昇格されます宣言する。
機能を強化:関数を宣言/定義は、スコープのトップに昇格されます。
5、厳密モード(厳密使用)
効果:;、コンパイラは、効率を向上させるために速度を上げ、実行するには不安コードの一部の除去は、コードの安全な動作を確保するためにJavaScriptの将来の新しいバージョンへの道を開きます。
パッケージ、プライベート、保護、公共、静的、歩留まり、実装、インターフェース、みましょう:キーワードにstrictモードを追加します。
6、JavaScriptが内蔵されたオブジェクト、属性とメソッド
アレイ | 日付 | evalの | 関数 | hasOwnProperty |
無限大 | isFiniteの方 | ますisNaN | isPrototypeOf | 長さ |
数学 | NaNの | 名 | 数 | オブジェクト |
プロトタイプ | 弦 | toString | 未定義 | valueOf |
7、このキーワード
この方法では、この方法は、オブジェクトが属していることを示しています。
単独で使用する場合、これはグローバルオブジェクトウィンドウを表します。
機能では、これはグローバルオブジェクトウィンドウを表します。(厳密モードで機能では、これは、(未定義)未定義です。)
イベントでは、このイベントを受信する要素を表します。
8、聞かせてとのconst
ES2015(ES6)は二つの重要な新しいJavaScriptのキーワードを追加します:みましょうとのconst。
変数のみletコマンドブロック内で、それが実際にグローバルスコープを高め、地元のコードブロックのスコープのスコープ機能の外に有効と宣言してみましょう。
constのは、一定の読み取り専用を宣言、定数の一回宣言された値を変更することはできません。
9、無効
ボイドキーワードを計算するには式を指定しますが、値を返しません。
例えば、ジャバスクリプトます:void(0)は意味がありません。
二、JavaScript関数
1、関数定義
関数宣言の使用:関数myfunc関数を(a、b)は、{* bを返します;}
関数式(匿名関数):VaRのmyfunc関数=関数(a、b)は、{* bを返します;}
VaRのmyfunc関数は=新しい機能( "A"、 "B"、 "* bを返す"):()コンストラクタ関数を使用します
2、関数のパラメータ
明示的なパラメータ(パラメータ、すなわち、仮パラメータ)、隠しパラメータ(引数、すなわち引数)。
あなたは、データ型を明示的に定義されたパラメータを指定しないでください。暗黙的な関数型パラメータが検出されない場合、暗黙的なパラメータの数が検出されません。
あなたは暗黙のパラメータを呼び出すときに、関数が利用できない場合ES5は、パラメータのデフォルト設定は次のとおりです。未定義。
ES6は、デフォルトのパラメータを持つ関数をサポートしています。
JavaScriptの機能が内蔵されたが、パラメータ配列関数呼び出しを含む引数オブジェクトをオブジェクトがあります。
値によって渡されたJavaScriptの暗黙の引数:関数の値がちょうど取得し、パラメータの暗黙的な変更は、関数の外に表示されません。
3、関数呼び出し
グローバル関数呼び出しとして、これは、ウィンドウオブジェクトを指します。
オブジェクトのメソッド呼び出しとして、これはオブジェクトを指します。
新しい関数オブジェクトを生成する新しい関数を呼び出すコンストラクタを使用し、この場合には、任意の値を指していません。
(コールを介してオブジェクトを機能)および(適用)この場合、パラメータは第1のパラメータ値を指すように、第1のオブジェクトを必要とする2つの方法に関する。
4、閉鎖
関数がローカル変数にアクセスすることができ、グローバル変数にアクセスすることができ、そして関数のインライン展開、外部関数のローカル変数のインラインアクセスグローバル変数にもアクセスすることができる場合。
外側の関数のローカル変数にアクセスする関数内関数オブジェクト、関数オブジェクトを作成します。
この内部関数オブジェクトの作成が返され、それが唯一の外側の関数のプライベートローカル変数を介して動作することができ、このメカニズムはクロージャです。
三、JavaScriptオブジェクト
図1に示すように、オブジェクト単位
JavaScriptが概念を好きではない、という概念は、オブジェクト、オブジェクトだけでなく、継承の概念に似ています。(FOR ...物体を横断する時にオブジェクトのプロパティを横断します)
JavaScriptですべてのオブジェクトは、プロパティとメソッドを有するオブジェクトであり、すべてのJavaScriptオブジェクトは、プロトタイプ(プロトタイプオブジェクト)からプロパティとメソッドを継承します。
オブジェクトを作成するための3つの方法があります。
(1)VAR OBJ =新しいオブジェクト(); obj.name = "javaの"; obj.color =「赤」。
(2)VAR OBJ = {名の "Java"、色 "赤"}。
(3)对象构造器:関数func(名前、色){this.name =名。this.color =色} | VAR OBJ =新FUNC( "ジャワ"、 "赤")。
JavaScriptのオブジェクト・マニュアル: https://www.runoob.com/jsref
2、Numberオブジェクト
属性:MAX_VALUE、MIN_VALUE、NEGATIVE_INFINITY、POSITIVE_INFINITYは、NaN、プロトタイプ、コンストラクタ。
方法:toExponential()、toFixed()、toPrecision()のtoString()のvalueOf()。
3、Stringオブジェクト
属性:長さ、プロトタイプ、コンストラクタ。
方法:のcharAt()、charCodeAt()、CONCAT()、fromCharCode()、のindexOf()、のlastIndexOf()、一致()、交換()、
検索()、スライス()、スプリット()、SUBSTR()、サブ()、toLowerCaseメソッド()、toUpperCaseの()、のvalueOf()。
4、ブールオブジェクト
決意ロジックで、値が偽のように識別される:0、-0、NULL、「」、falseに未定義のNaN 3。
プロパティ:プロトタイプ、コンストラクタ。
方法:のtoString()、のvalueOf()。
5、Arrayオブジェクト
VAR X =新しいアレイ()を使用して、オブジェクトの異なるタイプであり得る異なる配列添字ポイントを作成します。
属性:長さ、プロトタイプ、コンストラクタ。
方法:CONCAT()、...、のtoString()、のvalueOf()。
6、日付オブジェクト
プロパティ:プロトタイプ、コンストラクタ。
方法:のgetDate()、...、のtoString()、のvalueOf()。
7、Mathオブジェクト
プロパティ:E、LN2、LN10、LOG2E、LOG10E、PI、SQRT1_2、SQRT2
方法:ABS(X)、···、SQRT(x)は、日焼け(x)です。
8、正規表現オブジェクト
属性:グローバル、ignoreCaseは、lastIndexの、マルチライン、ソース、コンストラクタ。
方法:コンパイル()、EXEC()、テスト()、のtoString()、検索()、マッチ()、(置き換え)、スプリット()。