Home >Web Front-end >JS Tutorial >What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

青灯夜游
青灯夜游Original
2018-09-17 17:58:461626browse

This chapter brings you what are the six data types in JavaScript? js data types and common implicit conversion logic (introduction), you will learn about the six data types in javascript and common implicit conversion logic. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

1. Six data types

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

Primitive type (basic type): access by value, The actual value stored in the variable can be manipulated. Null and undefined are special among primitive type summaries.

Reference type: The value of a reference type is an object stored in memory.

* Unlike other languages, JavaScript does not allow direct access to locations in memory, which means that the memory space of an object cannot be directly manipulated. When you manipulate an object, you are actually manipulating a reference to the object rather than the actual object. So values ​​of reference types are accessed by reference.

2. Implicit conversion

1. And-

Smart use of the and-rules Conversion type

Convert the variable into a number: num-0;

Convert the variable into a string: num '';

2, a==b

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

Same type, same as ===

Different type, try type conversion and comparison:

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

3, a===b

is of different types, return false

is of the same type:

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

##3. Packaging objects

The number, string and boolean among the basic types have corresponding packaging types.

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

When trying to use a basic type as an object, such as accessing the length attribute or adding some attributes. , JavaScript will convert these basic types into corresponding packaging type objects. After completing such an access such as a.length returning or a.t being set, this temporary object will be destroyed. Therefore, after a.t is assigned a value of 3, the value of a.t output is undefined.

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

str, number and true all have packaging types, so you can enclose the number in parentheses and call the toString() method

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

4. Type detection

There are many type detection methods in JavaScript:

  • typeof

  • instanceof

  • Object.prototype.toString

  • constructor

  • duck type

1, typeof

The most common one is typeof:

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

What is special is that typeof null returns "object".

For historical reasons, the specification attempts to modify typeof null and returns "null". After modification, a large number of websites cannot be accessed. For compatibility or historical reasons, "object" is returned.

typeof is very convenient for basic types and function objects, but there is no way for other types.

Determine whether an object is an array? Use typeof to return "object". Instanceof is commonly used to judge objects.

2. instanceof

operates based on the prototype chain. obj instanceof Object.

The left operand is an object, otherwise false is returned. The right operand must be a function object or function constructor, otherwise a typeError exception is returned.

Principle: Determine whether the prototype chain of the object of the left operand on the left has the prototype attribute of the constructor on the right.

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

Any constructor has a prototype object attribute, which will be used as the prototype of the new object.

When bosn instanceof Person, it is found that the prototype of bosn, which is Student.prototype, is not equal to Person.prototype, so the prototype chain will search upwards. The prototype of bosn's prototype is equal to Person.prototype, so it returns true.

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

instanceof is very useful when determining whether an object is an array, Data, regular expression, etc.

Instanceof Pit: Instanceof cannot be used for object type detection between different windows or iframes!

3. Object.prototype.toString

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

It should be noted that Object.prototype.toString in IE6/7/8. apply(null) returns "[object Object]".

4. Constructor

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

Any object has a constructor attribute. If it is inherited from the prototype, the constructor will point to the constructor that constructs the object. device or constructor.

The constructor can be overridden, so use it with care.

5. duck type

For example, if you don’t know whether an object is an array, you can determine whether its length is a number and whether it has arrays such as join and push. Methods. Determining whether an object belongs to certain types through some characteristics is sometimes used.

Summary:

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

What are the six data types in javascript? js data types and common implicit conversion logic (introduction)

##6. How to detect that a variable is a string

There is another method: concatenate the variable and the null character and then make a congruent judgment with the original variable

var str="hello";
var temp=str+'';
temp===str
//tru


The above is the detailed content of What are the six data types in javascript? js data types and common implicit conversion logic (introduction). For more information, please follow other related articles on the PHP Chinese website!

Statement:
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