JSデータ型の入門的な理解

1.分類(2つのカテゴリー)


  *基本(値)タイプ
    *数値:任意の数値
    *文字列:任意のテキスト
    *ブール値:true / false
    *未定義:未定義
    * null:null
  *オブジェクト(参照)タイプ
    *オブジェクト:任意のオブジェクト
    *配列:特殊オブジェクトタイプ(以下(標準/内部データ順)
    *機能:特殊オブジェクトタイプ(実行可能)


2.判断


  * typeof:
    *区別できる:数値、文字列、ブール値、未定義、関数*
    区別できない:nullとオブジェクト、一般的なオブジェクトと配列
  * instanceof
    *オブジェクトデータのタイプを決定するために特別に使用される:オブジェクト、配列、関数
  * == =
    *判断可能:未定義およびnull

// typeof: 返回的是数据类型的字符串表达形式
  //1. 基本类型
  var a
  console.log(a, typeof a, a===undefined,66666666666) // undefined 'undefined' true
  console.log(a==typeof a) // false
  //typeof 返回的字符串,a==typeof a 为false
	
  a = 3
  console.log(typeof a === 'number')
  a = 'atguigu'
  console.log(typeof a === 'string')
  a = true
  console.log(typeof a === 'boolean')
 
  a = null
  console.log(a===null) // true
  console.log(typeof a) // 'object'

  console.log('--------------------------------')
 
  //2. 对象类型
  var b1 = {
    b2: [2, 'abc', console.log],
    b3: function () {
      console.log('b3()')
    }
  }
  console.log(b1 instanceof Object, typeof b1) // true 'object'
  console.log(b1.b2 instanceof Array, typeof b1.b2) // true 'object'
  console.log(b1.b3 instanceof Function, typeof b1.b3) // true 'function'

  console.log(typeof b1.b2[2]) // 'function'
  console.log(b1.b2[2]('abc')) // 'abc' undefined
  
  
  var arr = [];
  console.log(arr instanceof Object);//true

 3.小さなヒント

1. undefinedとnullの違い?
  * undefinedは割り当てがないことを意味し
  ます* nullは割り当てを意味しますが、値はnullです
2.変数をnullに割り当てるのはいつですか?
  * var a = null // aはオブジェクトを指しますが、オブジェクトはこれですまだ決定されていません
  * a = null //が指すオブジェクトをガベージオブジェクトにします
3.変数の型とデータ型を厳密に区別しますか?
  * jsの変数には型がなく、型は変数のは、実際には変数メモリ内のデータのタイプです
  *変数タイプ:
    *基本タイプ:基本タイプのデータ
    を保存する変数*参照タイプ:オブジェクトのアドレス値を保存する変数
  *データオブジェクト
    *基本タイプ
    *オブジェクトタイプ

おすすめ

転載: blog.csdn.net/m0_43599959/article/details/109502664