您当前的位置:首页 > 互联网教程

JS判断数据类型的方法有哪些

发布时间:2025-05-25 02:45:44    发布人:远客网络

JS判断数据类型的方法有哪些

一、JS判断数据类型的方法有哪些

1、 JS判断数据类型的方法有:typeof方法用于返回该类型的字符串形式,instanceof方法用来判断原型,constructor方法以及Object.prototype.toString方法

2、在JavaScript中有多种方法可以帮助我们去判断数据类型,接下来将在文章中为大家详细介绍这些方法,具有一定的参考作用希望对大家有所帮助。

3、typeof是一个操作符,右侧是一个一元表达式,并返回这个表达式的数据类型。返回的结果用该类型的字符串的形式表示,包括:number、boolean、symbol、string、object、undefined、function等。

4、对于基本类型。除了null值返回object以外,其他均返回正确的结果

5、对于引用值来说,除了function返回function类型,其他都返回object类型

6、<script type="text/javascript">

7、 console.log(typeof a);//number

8、 console.log(typeof a);//boolean

9、 console.log(typeof a);//undfined

10、 console.log(typeof a);//object

11、 console.log(typeof a);//object

12、 console.log(typeof a)//function

13、instanceof是用来判断 A是否为 B的实例,表达式为:A instanceof B,如果 A是 B的实例,则返回 true,否则返回 false。在这里需要特别注意的是:instanceof检测的是原型。

14、<script type="text/javascript">

15、console.log(a instanceof Array)

16、</script>返回的结果:true

17、当一个函数被定义时,JS引擎会为它添加 prototype原型,然后再在 prototype上添加一个 constructor属性,并让其指向该函数的引用。

18、当执行 var f= new F()时,F被当成了构造函数,f是F的实例对象,此时 F原型上的 constructor传递到了 f上,因此 f.constructor== F

19、方法四:Object.prototype.toString方法

20、toString是Object原型对象上的一个方法,该方法默认返回其调用者的具体类型,更严格的讲,是 toString运行时this指向的对象类型,返回的类型格式为[object,xxx],xxx是具体的数据类型,其中包括:String,Number,Boolean,Undefined,Null,Function,Date,Array,RegExp,Error,HTMLDocument等等都可以通过这个方法获取到。

21、console.log(Object.prototype.toString.call(num));

22、console.log(Object.prototype.toString.call(''));

23、console.log(Object.prototype.toString.call(1));

24、console.log(Object.prototype.toString.call(true));

25、console.log(Object.prototype.toString.call(null));

26、console.log(Object.prototype.toString.call(new Function()));

27、console.log(Object.prototype.toString.call(new Date()));

28、console.log(Object.prototype.toString.call([]));

29、console.log(Object.prototype.toString.call(document));

30、console.log(Object.prototype.toString.call(window));效果图:

二、JS数据有哪些类型

1、通过上一节课,大家应该明白了JS其实和C语言,特别是VB很相似的,大家有没有增加点自信,任何语言都要学习数据类型,所以我们开始吧

2、在JavaScript中不区分“字符”和“字符串”,一视同仁。这个就和VB很相似。用Var来定义变量,这个变量可以是字符串、字符、数值变量等

3、单考虑数值变量,无需考虑整形、长整型、浮点型什么的,直接用

4、在面向对象的设计模式中,将数据和处理的方法捆绑在一起形成的整体,称为对象。它封装了数据和操作数据的方法,使用时要先创建这个对象,用new运算符来调用对象的构造函数。(不同语言创建方式不同)。其实很常见的,比如日期的调用(看下图)

5、全局对象是所有全局方法的拥有者,用来统一管理全局方法。该对象不能使用new运算符创建对象实例,所有方法直接调用即可。

6、大家很难理解,只要理解为在所有程序集外建立的对象,可以在任何程序集里面直接调用(本来就镶嵌好的),类似VB中global,类似易语言的模块调用

7、字符串对象,对象封装了与字符串有关的特性,主要用来处理字符串。通过String对象,可以对字符串进行剪切、合并、替换等等。可以调用该对象的构造函数创建一个实例,其实在定义一个字符串类型变量时就也创建了一个String对象实例。

8、类似易语言中的“文本_切割”啥的,但是记住JS中的数数是从0开始的

9、我们分析下,字符串所用的方法,substring、slice按位置取出中间的文本,bold()文本加粗,fontcolor("red")设置字体颜色为灰色,\为转义字符,

10、定义数组,这个应该都见过 var vv=new Array("1","2","3","4");严重警告,这里的Array的第一个字母是大写的,不然定义失败;

三、JS的基本数据类型

JS中一共有六种基本数据类型,分别是Undefined、Null、Boolean、Number、String,还有在ES6中新增的Symbol和ES10中新增的BigInt类型。

1. Undefined:未定义型  

一个变量声明了但是未赋值的情况下就是undefined;

一般用来清空变量,也起了占位作用

凡是被双引号或单引号包裹起来的都叫做字符型,字符串有length属性。

包含整数和浮点数(浮点数数值必须包含一个小数点,且小数点后面至少有一位数字)两种值。

特点:①涉及到的任何关于NaN的操作,都会返回NaN   

      ② NaN不等于自身。

(2)isNaN():用于检查其参数是不是数值,得到的结果是一个布尔值,不是数值返回true,是数值返回false。

6. Symbol代表创建后独一无二且不可变的数据类型,它的出现我认为主要是为了解决可能出现的全局变量冲突的问题。

7. BigInt是一种数字类型的数据,它可以表示任意精度格式的整数,使用BigInt可以安全地存储和操作大整数,即使这个数已经超出了Number能够表示的安全整数范围。