JSデータタイプ演算子とフロー制御文

3749 ワード

JavaScriptはいくつかのデータタイプを定義していますか?どれがオリジナルタイプですか?どれが複雑なタイプですか?元のタイプと複雑なタイプの違いは何ですか?
JavaScriptデータタイプ
  • number:整数と小数
  • string:文字構成のテキスト
  • bootlean:trueとfalseの二つの値だけです.
  • undefine:未定義または存在しないことを表す
  • null:値が空です.
  • object:各種値からなる集合
  • smbol:ES 6の新しいタイプで、グローバル一意の値
  • を生成します.
    元のタイプ:数値、文字列、ブール値は元のタイプの値で、つまり彼らは最も基本的なデータタイプで、これ以上細分化できません.
    複雑なタイプ:オブジェクトは複雑なタイプと呼ばれ、オブジェクトはしばしば複数の元のタイプの値によって組み合わせられ、様々な値を格納する容器と見なされます.undefinedとnullは彼らを二つの特殊な値と見なします.
    元のタイプと複雑なタイプの違い:
  • 基本型変数は値であり、複雑なタイプの変数はメモリアドレスである.
  • 基本タイプは、賦課時に値をコピーし、複雑なタイプは、賦課時にアドレスのみコピーし、値をコピーしない.
  • typeofとinstance ofの役割と違い?
    typeofは、1つの値の演算タイプを返します.対応するデータタイプは、それぞれ異なる結果があります.instance ofは、変数がオブジェクト(クラス)の一例であるかどうかを判断し、戻り値はブールタイプである.typeofは基本タイプに使用します.instance ofは複雑なタイプに使用されます.
    どのように変数が数字、文字列、ブール、関数かを判断しますか?
    typeof演算子を使う
    typeof 157 === 'number' //       
    typeof 'name' === 'string' //        
    typeof false ==='boolean' //       
    typeof f ==='function' //       
    
    NaNは何ですか何か特別なところがありますか?
    NaN:Not a Numberは、数字ではなく、NaNといかなる値も等しくなく、自分を含めて
    どのように非数値を数値に変換しますか?
    3つの関数があります.非数を数値に変換できます.
  • Number()
  • パーネt()
  • parseFloat()
  • Number規則はかなり複雑で不合理で、ほとんど使われません.よく使われているのは後の二つです.しかも規則は似ています.
  • 文字列の前の空白文字を無視して、最初の空白文字
  • を見つけます.
  • もし最初の文字が-または数字でないならNaN
  • に戻ります.
  • は、非数値モードまで解析を継続すると
  • になる.
  • の先頭は8進数として、0 xの先頭は16進数としますが、2番目のパラメータ指定基数
  • を指定することができます.
    ==と==の違いは何ですか?
    ==厳格な意味の等しいです.NaNとNaNの違いに注意してください.
    使用==を使うと、javascriptはタイプ変換を行います.
  • 、2つの値のタイプが同じであれば、厳密に等しい演算が実行される.もし2つの値のタイプが異なるならば、
  • .
    1 .      null,   undefined,    
    2 .        ,      ,         ,    
    3 .       true/false     1/0  
    4 .         ,         ,     valueOf toString     
    5 .        
    
    breakとcontinueの違いは何ですか?
  • breakは、循環体を強制的に終了させ、循環後のステートメント
  • を実行するために使用される.
  • continueはこのサイクルを終了するために使用され、次のサイクルを実行します.
    void 0とundefinedは使用シーンにどんな違いがありますか?
  • void 0演算戻り値は常にundefined
  • である.
  • undefinedは、局所作用領域において
  • によってカバーされてもよい.
    以下のコードの出力結果は?なぜですか
    console.log(1+1);   //2,       ,    
    console.log("2"+"4");   //"24",         ,     
    console.log(2+"4");     //"24",             ,          
    console.log(+"4");  //4        ,       
    
    以下のコードの出力結果は?
    var a = 1;  
    a+++a;  //3,        ,a++    ,    3
    typeof a+2;//"number2",typeof    ,      a   "number",  2           ,    "number2"
    
    以下のコードの出力結果は?なぜですか
     var a = 1;
     var b = 3;
     console.log( a+++b );//4,a++    ,     1,   b  
    
    行列を巡回して、行列内の印刷配列の各項目の平方を
     var arr = [3,4,5];
     for(var i = 0; i
    JSONを巡回して、中の値を印刷します.
    var obj = {
     name: 'hunger', 
     sex: 'male', 
     age: 28 
    }
    for(var key in obj){
        console.log(obj[key]);
    }
    //  :hunger male 28
    
    以下のコード出力結果は?どうしてですか?
    var a = 1, b = 2, c = 3;
    var val = typeof a + b || c >0
    console.log(val) 
    
    //       :number2
    //      :typeof,+,>,||
    
    var d = 5;
    var data = d ==5 && console.log('bb') 
    console.log(data) //  :bb undefined , console.log('bb')     bb,&&  ture,console.log('bb')      ,  undefined,  data undefined
    
    var data2 = d = 0 || console.log('haha')
    console.log(data2)
    //    :haha undefined , console.log('haha')     haha,||     =,  0 console.log('haha'),  undefined,      data2,  data2 undefined
     
    var x = !!"Hello" + (!"world", !!"from here!!");
    console.log(x)
    //    :2 , !"world" false, !!"from here!!" ture, !!"Hello" ture,
        ture+ture,    2