Home > Web Front-end > JS Tutorial > How many data types are there in JavaScript? How to determine data type in JavaScript

How many data types are there in JavaScript? How to determine data type in JavaScript

云罗郡主
Release: 2018-10-29 14:33:10
forward
1677 people have browsed it

How many data types are there in JavaScript? I believe that many friends who have just come into contact with JavaScript will have such questions. This chapter will introduce to you how many data types are there in JavaScript? How to determine data type in JavaScript. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

How to determine the data type in JavaScript? We can use the following methods: typeof, instanceof, constructor, prototype method

How to judge the type in js, let’s give a few examples:

var a = "iamstring.";
var b = 222;
var c= [1,2,3];
var d = new Date();
var e = function(){alert(111);};
var f = function(){this.name="22";};
Copy after login

1. The most common judgment Method: typeof() method

alert(typeof a)   ------------> string
alert(typeof b)   ------------> number
alert(typeof c)   ------------> object
alert(typeof d)   ------------> object
alert(typeof e)   ------------> function
alert(typeof f)   ------------> function
Copy after login

The types returned by typeof are all in string form. Please note, for example:

alert(typeof a == "string") -------------> true
alert(typeof a == String) ---------------> false
Copy after login

In addition, typeof can determine the type of function; in addition to determining the type of Object It is more convenient when using objects.

2. Method to determine known object types: instanceof

alert(c instanceof Array) ---------------> true
alert(d instanceof Date)
alert(f instanceof Function) ------------> true
alert(f instanceof function) ------------> false
Copy after login

Note: instanceof must be followed by the object type, and the case cannot be wrong. This method is suitable for some conditional selections or branches.

3. Judgment based on the constructor of the object: constructor

alert(c.constructor == Array) ----------> true
alert(d.constructor == Date) -----------> true
alert(e.constructor == Function) -------> true
Copy after login

Note: constructor will make an error when inheriting the class

Example:

function A(){};
function B(){};
A.prototype = new B(); //A继承自B
var aObj = new A();
alert(aobj.constructor === B) -----------> true;
alert(aobj.constructor === A) -----------> false;
Copy after login

The instanceof method does not This problem will occur. Both direct and indirect inheritance of objects will report true:

alert(aobj instanceof B) ----------------> true;
alert(aobj instanceof B) ----------------> true;
Copy after login

Let’s get back to the topic. To solve the problem of construtor, we usually let the object’s constructor point to itself manually:

aobj.constructor = A; //将自己的类赋值给对象的constructor属性
alert(aobj.constructor === A) -----------> true;
alert(aobj.constructor === B) -----------> false; //基类不会报true了;
Copy after login

4. Universal but A very cumbersome method: prototype

alert(Object.prototype.toString.call(a) === ‘[object String]’) -------> true;
alert(Object.prototype.toString.call(b) === ‘[object Number]’) -------> true;
alert(Object.prototype.toString.call(c) === ‘[object Array]’) -------> true;
alert(Object.prototype.toString.call(d) === ‘[object Date]’) -------> true;
alert(Object.prototype.toString.call(e) === ‘[object Function]’) -------> true;
alert(Object.prototype.toString.call(f) === ‘[object Function]’) -------> true;
Copy after login

cannot be written in the wrong case, which is more troublesome, but it is more versatile.

Usually, you can use typeof to judge. If you encounter a situation where the Object type is known, you can use the instanceof or constructor method.

The above is about how many data types are there in JavaScript? A full introduction to how to determine the data type in JavaScript. If you want to know more about JavaScript Video Tutorial, please pay attention to the PHP Chinese website.


The above is the detailed content of How many data types are there in JavaScript? How to determine data type in JavaScript. For more information, please follow other related articles on the PHP Chinese website!

source:lvyestudy.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template