js常用的数据类型有哪些

JavaScript018

js常用的数据类型有哪些,第1张

js基本的数据类型 :数字类型,字符串型,布尔型,undefined,null ,对象类型,数组

1、数字类型(Number)

只有一种数字类型,数字 可以是小数 ,也可以的整数

以0开头 默认使用8进制来表示我的这个数字

以0x开头 默认使用16进制来表述我的这个数字

如果以-开头 默认以负数

如果我带有e:以科学计数法来解析我的这个数字

2、字符串型(string)

字符串是存储字符的变量,用来表示文本的数据类型,程序中的字符串是包含单引号/双引号的,由单引号来界定我双引号中包含的字符串 反过来

es6模板字符串("`")

3、布尔类型(boolean)

一般是用在流程控制语句中,字符串和数字类型都是无穷多个,然而我们的布尔数据类型只有两个:true 和 false

这两个个值一般用于说明某个事物是真或者假

js一般用布尔类型来比较所得到的结果

4、null(空)

关键字null是一个特殊的值,它表示变量为空值,用来定义空的或者是不存在的引用。

如果试图去引用一个没有定义的值,就会返回一个null。

这里注意一点:null并不等于"" 或者0

5、undefined(未定义)

这个值表示变量不含有值,没有定义的值,或者被定义了一个不存在的属性值

什么是NaN:

        NaN 就是在发生类型强制转换的时候会产生 NaN ,也就是把其他类型转换成 Number 类型时,不能转换而返回的结果。

几种转换为 Number 类型的方法及可能出现NaN情况:

        第一种转换函数:parseInt / parseFloat

                console.log(parseInt(" 我是谁 "))   console.log((" 我是谁 "))

以上两种转换函数的结果就会返回 NaN 因为转换的不是一个有效数字啊。

          第二种强制转换类型: Number()

                  console.log(Number("12px"))返回 NaN 因为不是一个有效数字,后面有文字

            第三种变量弱类型转换:

                    var str = '012.345 '      var x = str - 0      console.log(x, typeof x)  // 这就是正常的了

那在JS中不管是什么都会有个类型,那 NaN 是个啥类型呢?

这里可以看到,NaN 的类型是 Number,那既然是 Number 类型,那我用它来比较是不是 数字类型 可不可以勒,那咱们就来看一下。

那这里怎么返回的都是 false 呢? 并且自己连自己都不等于,NaN的英文翻译是:Not a number (不是一个数字的缩写),那居然你不是一个数字 比喻是A,我也不是一个数字 比喻是B,那么 A == B 嘛?你会发现并不相等 返回 false。

那我想判断一个 变量是不是数字类型,不能使用NaN方法,那就有了 isNaN 的出现,请看下方用法:

 isNaN   返回值是 如果你是有效数字,就是返回false,这里为啥是false 请看上面 NaN 英文的翻译 ,如果你返回的不是一个有效数字就是 true。

原理相当于是:

这里你会发现,判断的时候通过Number进行了一波隐式转换,才得到最终结果 false。

说到在项目中真实的用处,目前还没有遇到,但是如果你了解这个方法,遇到相关处理数据需要判断时,你就会想到它啦,以上就是本人对 NaN 及 isNaN 的相关介绍, 还有那句话:如有不对之处及不周之处请大佬们指出,也希望对一些人有所帮助,咱们下次再会!