Type de JavaScript

En JavaScript, il existe 5 types de données différents pouvant contenir des valeurs :
string
number
boolean
object
function
Il existe 6 types d’objets :
Object
Date
Array
String
Number
Boolean
Et 2 types de données qui ne peuvent pas contenir de valeurs :
Le type d’opérateur
Vous pouvez utiliser le typeof
opérateur pour trouver le type de données d’une variable JavaScript.
Exemple
typeof “John” // Renvoie “string”
typeof 3.14 // Retourne “nombre”
typeof NaN // Renvoie “nombre”
typeof false // Renvoie “booléen”
Type de [1,2,3,4] // Retourne “objet”
typeof {name:’John’, age:34} // Renvoie “object”
typeof new Date() // Retourne “objet”
typeof fonction () {} // Renvoie “fonction”
typeof myCar // Renvoie “undefined” *
typeof null // Renvoie “objet”
Essayez-le vous-même »
Veuillez observer :
- Le type de données de NaN est le nombre
- Le type de données d’un tableau est un objet
- Le type de données d’une date est un objet
- Le type de données de null est un objet
- Le type de données d’une variable indéfinie est indéfini
* - Le type de données d’une variable à laquelle aucune valeur n’a été affectée est également indéfini *
Vous ne pouvez pas utiliser typeof
pour déterminer si un objet JavaScript est un tableau (ou une date).
Données primitives
Une valeur de données primitive est une valeur de données simple unique sans propriétés ni méthodes supplémentaires.
Le typeof
L’opérateur peut renvoyer l’un de ces types primitifs :
string
number
boolean
undefined
Exemple
typeof “John” // Renvoie “string”
typeof 3.14 // Retourne “nombre”
typeof true // Renvoie “booléen”
typeof false // Renvoie “booléen”
typeof x // Retourne “undefined” (si x n’a pas de valeur)
Essayez-le vous-même »
Données complexes
Le typeof
L’opérateur peut renvoyer l’un des deux types complexes :
Le typeof
L’opérateur renvoie “object” pour les objets, les tableaux et null.
Le typeof
L’opérateur ne renvoie pas “object” pour les fonctions.
Exemple
typeof {name:’John’, age:34} // Renvoie “object”
Type de [1,2,3,4]
// Renvoie “object” (pas “array”, voir note ci-dessous)
typeof null // Renvoie “objet”
typeof function myFunc(){} // Renvoie “fonction”
Essayez-le vous-même »
Le typeof
l’opérateur renvoie “object
” pour les tableaux car en JavaScript les tableaux sont des objets.
Le type de données de typeof
Le typeof
L’opérateur n’est pas une variable. C’est un opérateur. Les opérateurs ( + – * / ) n’ont aucun type de données.
Mais le typeof
opérateur toujours renvoie une chaîne (contenant le type de l’opérande).
La propriété constructeur
Le constructor
La propriété renvoie la fonction constructeur pour toutes les variables JavaScript.
Exemple
“John”.constructor // Renvoie la fonction String() {[native code]}
(3.14).constructor // Renvoie la fonction Number() {[native code]}
false.constructor // Renvoie la fonction booléenne() {[native code]}
[1,2,3,4].constructor // Renvoie la fonction Array() {[native code]}
{name:’John’,age:34}.constructor // Renvoie la fonction Object() {[native code]}
new Date().constructor // Renvoie la fonction Date() {[native code]}
function() {}.constructor // Renvoie la fonction Function(){[native code]}
Essayez-le vous-même »
Vous pouvez vérifier la propriété du constructeur pour savoir si un objet est un Array
(contient le mot “Array”) :
Exemple
function estTableau(monTableau) {
return myArray.constructor.toString().indexOf(“Array”) > -1 ;
}
Essayez-le vous-même »
Ou encore plus simple, vous pouvez vérifier si l’objet est un Fonction tableau:
Exemple
function estTableau(monTableau) {
return myArray.constructor === Array;
}
Essayez-le vous-même »
Vous pouvez vérifier la propriété du constructeur pour savoir si un objet est un
Date
(contient le mot “Date”) :
Exemple
function estDate(maDate) {
return myDate.constructor.toString().indexOf(“Date”) > -1 ;
}
Essayez-le vous-même »
Ou encore plus simple, vous pouvez vérifier si l’objet est un Fonction date:
Exemple
function estDate(maDate) {
return myDate.constructor === Date ;
}
Essayez-le vous-même »
Indéfini
En JavaScript, une variable sans valeur a la valeur undefined
. Le genre est aussi undefined
.
Toute variable peut être vidée, en définissant la valeur sur undefined
. Le type sera également undefined
.
Exemple
voiture = indéfini ; // La valeur n’est pas définie, le type n’est pas défini
Essayez-le vous-même »
Valeurs vides
Une valeur vide n’a rien à voir avec undefined
.
Une chaîne vide a à la fois une valeur légale et un type.
Nul
En Javascript null
c’est rien”. C’est censé être quelque chose qui n’existe pas.
Malheureusement, en JavaScript, le type de données de null
est un objet.
Vous pouvez considérer cela comme un bogue dans JavaScript qui typeof null
est un objet. Ça devrait être null
.
Vous pouvez vider un objet en le définissant sur null
:
Exemple
let person = {firstName:”John”, lastName:”Doe”, age:50, eyeColor:”blue”} ;
personne = null ; // Maintenant, la valeur est nulle, mais le type est toujours un objet
Essayez-le vous-même »
Vous pouvez également vider un objet en le définissant sur undefined
:
Exemple
let person = {firstName:”John”, lastName:”Doe”, age:50, eyeColor:”blue”} ;
personne = indéfini ; // Maintenant, la valeur et le type sont indéfinis
Essayez-le vous-même »
Différence entre indéfini et nul
undefined
et null
sont de valeur égale mais de type différent :
typeof indéfini // indéfini
typeof null // objet
null === indéfini // faux
null == indéfini // vrai
Essayez-le vous-même »
L’opérateur instanceof
Le instanceof
l’opérateur renvoie true
si un objet est une instance de l’objet spécifié :
Exemple
const voitures = [“Saab”, “Volvo”, “BMW”];
(instance de voitures de Array);
(voitures instanceof Object);
(voitures instanceof String);
(voitures instanceof Number);
Essayez-le vous-même »
L’opérateur du vide
Le annuler l’opérateur évalue une expression et renvoie
indéfini. Cet opérateur est souvent utilisé pour obtenir la valeur primitive indéfinie, en utilisant “void(0)” (utile lors de l’évaluation d’une expression sans utiliser la valeur de retour).
Exemple
Essayez-le vous-même »
#Type #JavaScript