Home >Web Front-end >JS Tutorial >What are the data types of JavaScript? How many can you name?

What are the data types of JavaScript? How many can you name?

yulia
yuliaOriginal
2018-09-12 16:38:441765browse

For many JavaScript beginners, data types are confusing, and sometimes even make people crazy. Now let’s solve this confusion for everyone.

JavaScript has a total of eight data types. It includes basic data types and reference data types. The basic data types are: string, number, Boolean, null, undefined. Among them, the reference types are: array, function, and object. There are a total of 8 data types. Each type has its own attributes or methods, thus building this rich and colorful JavaScript world.

const strA = 'xxx==='
const numberB = 123
const boolC = false

const nullD = null
const undedfinE = undefined

const arrayF = [1,2,3]
const funcG = function() {
    let a = '123'
    console.log(a)
}
const objH = {
    a: 1,
    getName: function() {
        console.log(this.a)
    }
}
const result = function(x) {
    return typeof x
}
console.log(result(strA)) // string
console.log(result(numberB)) // number
console.log(result(boolC)) // boolean
console.log(result(nullD)) // object
console.log(result(undedfinE)) // undefined
console.log(result(arrayF)) // object
console.log(result(funcG)) // function
console.log(result(objH)) // object

Distinguish between easily confused data types

TIPS: After reading the eight data types above, read them. Is it still a bit confusing to find that there are three types of data, namely null, array, and Object. The typeof of these three data types is object. So how to differentiate again?

typeof null         // object
typeof [123,133]    // object
typeof {a:1}        // object
// 这个时候就无法判断了, 如何操作了?
const testArray = [11,22,33,44]
const testNull = null
const testObj = {a:1}
const testObjectFun = function(x) {
    return Object.prototype.toString.call(x)
}
console.log( testObjectFun(testArray))  // [object Array]
console.log( testObjectFun(testNull))   // [object Null]
console.log( testObjectFun(testObj))    // [object Object]

Currently, Object.prototype.toString.call(xxx) is a good method to determine what the current object is.

Method to determine whether the current object is an array

const arr = [1,2,3]
// es6
Array.isArray(arr)
arr instanceof Array
arr.constructor === Array
// es5
Object.prototype.toString.call(arr) === '[object Array]'

Summary: In the language of JS, the common data types have been demonstrated above, and also shown There are some methods to determine the current data type. Since JS is a weakly typed language, the so-called weakly typed language actually means that the type of data can change according to changes in context.

The above is the detailed content of What are the data types of JavaScript? How many can you name?. 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