目录
  1. 1. 数据类型的分类和判断
    1. 1.1. 分类
    2. 1.2. 判断
      1. 1.2.1. undefined与null的区别?
      2. 1.2.2. 什么时候给变量赋值为null呢?
      3. 1.2.3. 严格区别变量类型与数据类型?
JavaScript数据类型及其判断

数据类型的分类和判断

分类

  • 基本(值)类型
    • Number ——- 任意数值 ———— typeof
    • String ——- 任意字符串 ——— typeof
    • Boolean —— true/false ——- typeof
    • undefined —- undefined ——- typeof/===
    • null ———— null ————— ===
  • 对象(引用)类型
    • Object ——- typeof/instanceof
    • Array ——— instanceof
    • Function —— typeof

判断

  • typeof
    • 可以判断: undefined/ 数值 / 字符串 / 布尔值 / function
    • 不能判断: null与object object与array
  • instanceof
    • 判断对象的具体类型
  • ===
    • 可以判断: undefined, null

instanceof判断是否属于某个对象的实例

var b1={
b2: [1,2,"asd"],
b3: function () {
console.log('b3')
return function () {
return 'zhang'
}
}
}
console.log(b1 instanceof Object, b1 instanceof Array) // true false
console.log(b1.b2 instanceof Array, b1.b2 instanceof Object) // true true
console.log(b1.b3 instanceof Function, b1.b3 instanceof Object) // true true
console.log(typeof b1.b3==='function') // true
console.log(typeof b1.b2[2]==='function') // true
b1.b2[2](321) // 321
console.log( b1.b3()() ) // zhang

undefined与null的区别?

  • undefined代表定义未赋值
  • nulll定义并赋值了, 只是值为null

什么时候给变量赋值为null呢?

  • 初始赋值, 表明将要赋值为对象
  • 结束前, 让对象成为垃圾对象(被垃圾回收器回收)

严格区别变量类型与数据类型?

  • 数据的类型
    • 基本类型
    • 对象类型
  • 变量的类型(变量内存值的类型)
    • 基本类型: 保存就是基本类型的数据
    • 引用类型: 保存的是地址值
文章作者: Jachie Xie
文章链接: https://xjc5772.github.io/2020-03/20/%E5%AD%A6%E4%B9%A0/%E5%89%8D%E7%AB%AF%E5%AD%A6%E4%B9%A0/JS/JavaScript%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E5%8F%8A%E5%85%B6%E5%88%A4%E6%96%AD/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 XJC&Blog
打赏
  • 微信
  • 支付宝

评论