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
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
Same type, same as ===
Different type, try type conversion and comparison:
3, a===b
is of different types, return false
is of the same type:
##3. Packaging objects
The number, string and boolean among the basic types have corresponding packaging types. 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. str, number and true all have packaging types, so you can enclose the number in parentheses and call the toString() method
4. Type detection
There are many type detection methods in JavaScript:1, typeof
The most common one is typeof: 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. 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.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
It should be noted that Object.prototype.toString in IE6/7/8. apply(null) returns "[object Object]".
4. Constructor
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:
##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 variablevar 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!