1569 votes

Quelle est la différence entre null et undefined en JavaScript ?

Je veux savoir quelle est la différence entre null et undefined en JavaScript.

Fournissez dans votre réponse le meilleur lien qui se rapporte à ce sujet en JavaScript.

4voto

Comme typeof renvoie undefined, undefined est un type alors que null est un initialisateur qui indique que la variable ne pointe vers aucun objet (pratiquement tout en Javascript est un objet).

2voto

Web_developer Points 812

La valeur d'une variable sans valeur est indéfinie (c'est-à-dire qu'elle n'a pas été initialisée).

Les variables peuvent être vidées en mettant leur valeur à null.

Vous pouvez tester chacun d'eux à l'aide de la fonction === (three equal signs) ou == (two equal signs) pour la vérification de la comparaison. La grande différence est que ce dernier utilise la coercition, qui peut avoir des résultats bizarres -- elle renvoie vrai pour une comparaison nulle ou indéfinie si c'est le cas.

if (nullExample === null) { // executes this block only if null }
if (undExample ===Undefined) { // executes this block only if Undefined }
if (bothExampe == null) { // executes this block if Undefined or null }

Vous pouvez être plus précis avec une comparaison en utilisant la fonction typeof pour retourner le type d'un objet.

If (typeof variable ==="undefined") { // executes this block of if undefined }

1voto

neo Points 11

La variable n'a pas été initialisée alors c'est une variable non définie. Les variables peuvent être vidées en donnant à leur valeur la valeur null. Vous pouvez tester chacune d'entre elles en utilisant le signe === (trois signes égaux) ou == (deux signes égaux) pour vérifier la comparaison.

if (nullExample === null) { // executes this block only if null }

if (undExample ===Undefined) { // executes this block only if Undefined }

if (bothExampe == null) { // executes this block if Undefined or null }

Vous pouvez être plus précis avec une comparaison en utilisant la fonction typeof pour retourner le type d'un objet.

If (typeof variable ==="undefined")  { // executes this block of if undefined }

-4voto

Hoven Points 53

Juste pour ajouter mon point de vue -

Une variable qui n'est déclarée que, et qui n'est jamais utilisée nulle part, est supprimée par un compilateur optimisateur dans le cas de langages compilés comme le C++ [ou un avertissement est signalé dans l'IDE]. Cela signifie finalement que la variable est inexistante car sa mémoire n'est jamais allouée.

Dans le cas de l'interpréteur javascript, [je suppose] qu'une variable est traitée comme existant seulement à partir du moment où on lui donne une valeur. Avant ce point, son type est "indéfini", et aucune mémoire n'est allouée pour elle. Et donc, son type est indéfini.

Un null en javascript est une valeur qui représente une adresse, mais cette adresse ne pointe vers rien encore [référence inexistante]. Néanmoins, c'est une valeur.

-4voto

StephenPaden Points 44

Null est TOUJOURS un objet inconnu qui existe en mémoire, alors qu'undefined ne l'est pas.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X