数据类型(不太知道的那些事~)

1,921 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

数据类型,我们都熟悉的很,那就说一些偶尔会被我们忽略的一些事情~

undefined

目的: 正式明确对象空指针(null)与未初始化变量的区别

null

空对象指针 typeof(null) // 'object'

Boolean

任意字符串转为Boolean类型都为true

Number

  • 整数与浮点值

浮点值:1、let floatNum = 3.125e7 // 31250000 ; 2、0.1 + 0.2 !== 0.3;

值的范围:

1、最小值保存在Numner.MIN_VALUE中;

2、最大值保存在Number.MAX_VALUE中;

3、计算数值超过JS最大或最小范围可表示为正、负Infinity;

NaN:

可使用isNaN()测试对象

  • 数值转换

Number()

1、包含16进制可转换为对应的十进制数值

parseInt()

1、识别不同整数格式;

2、可接收第二个参数用于指定底数(进制数)

parseFloat()

1、只解析十进制,十六进制始终返回0;

String

  • 字符字面量

1、 \xnn : 以十六进制编码nn表示的字符(n为十六进制数字0~F);

2、\unnn : 以十六进制编码nn表示的Unicode字符(n为十六进制数字0~F);

3、转义序列表只表示一个字符

  • 转换为字符串toString()

1、数值调用此方法时,接收一个底数为参数,可得到二、八、十六进制字符串;

  • 模板字面量

1、`` 模板字面量可保留换行字符,是一种特殊的JS表达式;

  • 字符串插值

1、通过在${}使用一个JS表达式并插入进模板字面量;

  • 原始字符串

1、使用模板字面量可直接获取原始模板字面量内容 例如:console.info(\u00A9); //  ©

2、默认的标签函数String.raw console.info(String.raw\u00A9)  // \u00A9

Object

1、constructor : 用于创建当前对象的函数

2、hasOwnProperty(propertyName) :判断当前对象实例上是否存在给定的属性(属性名必须为字符串或符号)

3、isPrototypeOf(Object) :判断当前对象是否为另一个对象的原型

4、propertyIsEnumerable(propertyName)

5、toLocaleString() :返回对象的字符串(本地化执行环境)

6、toString(): 返回对象的字符串

7、valueOf() : 返回对象对应的字符串、数值或布尔值