JavaScript基础----数据类型

JavaScript基础----数据类型

网上资料整理得出。

一、数据类型

  • 基本数据类型

    • number

    • string

    • Boolean

    • null

    • undefined

    • symbol(es6)

    • bigint(es6)

  • 引用数据类型

    • object

      • 普通对象
      • 数组对象
      • 正则对象
      • 日期对象
      • math数学函数对象
      • ·········
    • function

俗称7+2种数据类型

二、数据类型检测

  • typeof

    • 检测数据类型的逻辑运算符。
    • 返回的结果都是字符串。
    • 局限性:typeof null 为object,typeof不能细分对象类型,检测普通对象或者数组对象都是object
  • instanceof

    • 检测是否为某个类的实例
  • constructor

    • 检测构造函数
  • Object.prottotype.toString.call

    • 检测数据类型

三、Number类型详解

  • NaN
    • 不是一个有效数字,和谁都不相等,但是是number类型
  • infinity
  • Number()
  • parseInt(整数)/parseFloat
把其他类型转换为有效数字的方法
1.强转换(基于底层机制转换)Number([value]),隐式转换都是基于Number转换:
	 Number:直接调用l浏览器最底层的数据类型检测机制来完成(true:1,false:0,null:0,undefined:NaN,空字符串为0),先转换为数字在进行检测   ,只要有一个非有效数字字符出现就是NaN
2.弱转换(基于一些额外的方法转换)parseInt([value])/parseFloat([value])
	parseInt:处理的值是字符串,从字符串左侧开始查找有效数字字符(遇到非有效数字字符则停止查找)。字符串中必须都是有效数字才会转换数字,否则都是NaN,空对象变成字符串:{}.toString()=>"[object Object]"
双等号比较:

1.对象=字符串,对象转换为字符串
2.null==undefined 但是和其他 值都不相等
3.剩下两边不同都是转换为数字

你可能感兴趣的:(js)