JSを深く勉強する

2615 ワード

一般的に、ブラウザは2つの部分に分けられます.1.shell:ユーザーが自分で操作できる部分です.2.カーネル:ブラウザコア(コード部分)①:レンダリングエンジン(HTML+CSS)②:JSエンジン③:その他のモジュール.
いくつかの主流ブラウザとカーネルを紹介します.
メインブラウザ
カーネル
IE
trident
Chrome
blink
firefox
Gecko
opera
presto
safari
webkit
JS実行キュー:task 2,1 ms->task 1,1 ms->task 1,1,1 ms->task 2,1 ms->task 2,1 ms->task 1,1 ms->JS実行スレッド.
JS定義の開発基準:var a=10;b=20c=30変数は改行して書きます.値は与えられます.等号の左右に一番良いスペースが配置されています.
値の種類――データの種類の変更不可の元の値(スタックデータ):値の種類は値によって決まるNumber:var a=123;(浮動小数点を持参)Boolean:var b=true/false;(正しいと間違っているだけです).String:var c="abcdefg"undefined:var d=undefined(未定義).宣言が定義されていません.この値はnull:var e=null(空)で上書きされます.
参照値:Aray(配列)object(オブジェクト)function(メソッド)
注意:元の値:最初の値を第二の値に割り当て、第一の値を変更し、第二の値は影響を受けない.参照値:最初の値を変更しても、2番目の値が変わります.
元の値:
var a = 10;
var b = a;
a = 20;
//     :a 20,b 10。
参照値
var arr = [1];
var arr1 = arr;
arr.push(2);
  :arr1 arr  。
typeof(オペレータ):データの種類を区別します.六種類のデータタイプ:number、string、undefined、bootlean、object、function.使い方:①:typeof(データ)は、6つのタイプのうちの1つを返します.②: typeofデータ;
タイプ変換:表示タイプ変換(大文字と小文字の区別):Number(mix):データタイプをnumber型に変換します.parseInt(a,b):データタイプを全体型に変換する.(b参:値を取る2~36(進数)は、記入しないことができます.パースFloat(a):データタイプを浮動小数点型PSに変換します.パースタイプの検出:最初が数字であれば、数値まで出力できます.eg:「1234 abc 123」->>1234 Number:アルファベットがあれば、出力はすべてプログラムNaNです.String(mix):文字列に変換する(タイプは全部文字列で、値は等しいかもしれない)Boolean():ブール値タイプに変換する(6つの(undefined,null,NaN,"(ダブル引用符)、0,false)はうそで、他は全部本当)toString():使い方が違います.eg:var=123;var b=a.toString()
隠しタイプ変換(内部呼び出し表示の方法)isNaN():括弧内の数がNaNであるかどうかを判断する.Number()に変数を入れて転化し、NaNと比較します.
+/--、+/-:変数を図Number()に入れて、+または--を行います.演算できるかどうかは関係なく、タイプはnumberに変わります.
「+」:両側に文字列があり、いずれもstring()を呼び出します.
-、*、/、%:まずNumber()に変えてから計算します.
特例:未定義の変数をtypeof()に入れてもエラーなく、undefined.typeofが返した6種類のデータタイプはstringです.typeof(typeof(a)(a未定義)->typeof(undefined)->string.
関数(弱いデータタイプの言語はアドレスを永遠に出力できません):関数式:
var test = function abc()
{
 document.write("a");
}
//    test() ->   a
//    abc() ->  。
//  ,test.name ->abc(    abc)
パラメータ:
function test(a,b){
  var a,b;//test(a,b)           a,b    
}
伝達パラメータ:test(5,6);a,b:形式パラメータです5,6:実際のパラメータです.形式パラメータと実際のパラメータは異なりますが、一つずつ対応しています.対応していない場合はundefinedです.形式パラメータの個数の実際のパラメータには「argments」配列があり、これ以上対応する形式パラメータがない実際のパラメータを巡回して出力することができます.形式パラメータは名前(本関数はtest)の配列に保存されます.実際のパラメータはargments配列に保存されます.
マッピング:実際のパラメータ=形式パラメータ:実際のパラメータは、argment[x(ある値)と同じで、形式パラメータ>実際のパラメータ:
test(1);
function test(a,b){
  var b = 2;
}
//  arguments[1]  undefined。