何である基本データ型、データのいくつかの種類があり1.js
未定義、ヌル、ブール値、数値、および文字列:5つの基本タイプが。
参照型:オブジェクト、配列と機能。
2.pxのEMとの違いは
画素を示しPX)、それは絶対的な単位であり、他の要素の変化の大きさを変化させない;
EMは親要素に相対フォントサイズを表します。EM相対単位は一定の尺度ではなく、相対値は、他の要素の寸法によって決定されます。
メモリリークが発生しますどのように処理3.JS
(1)メモリリークが予想外のグローバル変数によって引き起こされます。
リーク関数(){
;リーク=「XXX」//リークは、グローバル変数である、回復することはない
}
(2)クロージャのメモリリークによって引き起こされます。
(3)DOM要素の参照をクリーンアップしません。
(4)忘れたりタイマーコールバック、サブ要素によって引き起こされるメモリリーク。
、追加、削除、移動、コピー、作成、およびノードを見つける方法4.?
(1)新しいノードの作成
(createDocumentFragment)を//はDOMフラグメント作成
のcreateElementを()//コンクリート要素の作成
はcreateTextNodeを()//テキストノードを作成し
(2)、追加、除去、置換、挿入されている
のappendChild()//追加
のremoveChild()//削除
のreplaceChildを()//別
のinsertBefore()//挿入する
(3)検索
getElementsByTagNameの()による//タグ名
getElementsByNameは()name属性要素の値//
で//)getElementByIdをします(要素ID、一意性
5.データのどのようなタイプでは、JavaScriptのtypeof、返されました。
文字列、ブール値、数、未定義の、機能、オブジェクト
6.キャストの3種類と暗黙の型変換の2種類が含まれていますか?
(のparseInt、parseFloatは、数)強制
暗黙的に(== ===)
7.()スプリット差が(結合)の
前者は文字列に配列を変換することで切断される文字列の配列であり、
具体的にどのような8.newオペレータはそれをやりましたか?
1.空のオブジェクトを作成し、この変数は、関数のプロトタイプを継承し、オブジェクトを指します。
図2に示すように、この基準のプロパティとメソッドをオブジェクトに追加されます。
3、このによって参照新しく作成されたオブジェクト、そして最後に、暗黙的なリターンこの。
9. JavaScriptをオブジェクト指向で、どのようにJavaScriptの継承を反映?
達成するために、プロトタイプの試作品を使用してください。
10は違いが何であるかを尋ねる人2、入力が読み取り専用または無効に設定することができます.FORM?
読み取り専用の編集可能な、しかし選択してコピーすることができません。値がバックに渡すことができ
、編集することはできません無効、複製することはできませんが、選択することができません。値は、背景には渡されません
図11は、これを使用して3つの代表的なアプリケーションを書きます
イベント:このようonclickのthis->オブジェクトイベントなどが発生した
オブジェクトのうち、新たなthis->コンストラクタ
この変更を適用するコール/
12. 宣言されていないと、未定義の変数は何ですか?
宣言されていない変数は、プログラム中に存在せず、変数を宣言しませんでした。プログラムが宣言されていない変数の値を読み取ろうとする場合は、ランタイムエラーが発生しました。未定義の変数は、プログラムで宣言されているが、変数の任意の値を与えられていません。プログラムが定義されていない変数の値を読み取ろうとする場合は、未定義の値が返されます。
13.配列内の重複したコンテンツを削除する方法を書きますか?(あなたはまた、オブジェクトを使用することができ、それが重いのより一般的です)
VaRのARR = [ 'ABC'、 'ABCD'、 'SSS'、 '2'、 'D'、 'T'、 '2'、 'SS'、 'F'、'22で、 'D'];
/ /新しいアレイ定義
するvar Sを= [];
//反復
のために(VARのI = 0;私は<arr.length; Iは++){
IF(s.indexOf(ARR [I])== -1){/ / sは配列が存在するか否かを判定し、それが配列のプッシュするために存在しない
s.push(ARR [I])を;
}
}
にconsole.log(S);
//出力結果:[ "ABC"、 "ABCD "、 "SSS"、 "2"、 "D"、 "T"、 "SS"、 "F"、 "22"] 14であるものの閉鎖、それを使用する方法を、なぜそれを使うのか?
他の機能を読み込むための閉鎖は、内部変数の関数です。JavaScript言語、ローカル変数を読み込むための唯一の内部関数サブルーチンので、クロージャは、単に「関数内で定義された関数。」と解釈することができます
したがって、本質的に、クロージャは、内部ブリッジ機能と外部接続の機能です。クロージャは多くの場所で使用することができます。これは、1つは、前述の変数が関数の内部で読み取ることができるであり、他方はこれらの変数の値が記憶に残るようにすることです、2のために最も有用です。
閉鎖の注意事項を使用します。
•閉鎖ので、変数の関数がメモリに保存されるようになります、メモリの消費量がそれ以外の場合はIEでのパフォーマンスの問題のWebページがメモリリークにつながる可能性が発生します、それはクロージャを乱用することができない、大きく、 。ソリューションは、すべてのローカル変数が使用されていない削除する関数を終了する前に、あります。
親外・クロージャ機能、親機能は、内部変数の値を変更します。あなたはその私有財産(非公開の値)のような内部変数として、そのパブリックメソッド(パブリック・メソッド)の閉鎖を使用するオブジェクト(オブジェクト)として親関数を取るのであれば、あなたはないように注意しなければなりませんちょうど内部変数の親関数の値を変更