web-dev-qa-db-fra.com

Déclaration de variables javascript en tant que types spécifiques

Le titre dit tout, mais je fournirai plus de précisions:

Après avoir vu de nombreux exemples de javascript où toutes les variables sont déclarées comme type var, et vu la prise en charge d'autres types de données, pourquoi les variables d'un type de données spécifique ne sont-elles pas déclarées comme telles? Signification, pourquoi n'est-ce pas:

string hello = 'Hello, World'

utilisé au lieu de

var hello = 'Hello, World'

En regardant des sites comme OReilly Javascript montre qu'il y a des mots réservés pour d'autres types. Encore une fois, pourquoi ne sont-ils pas utilisés? Ne ferait-il pas des lignes comme celle-ci: typeof(variable)==='string'; n'est plus nécessaire?

23
CBredlow

Tout simplement, les variables JavaScript n'ont pas de types. Les valeurs ont des types.

Le langage nous permet d'écrire du code comme ceci:

var foo = 42;
foo = 'the answer';
foo = function () {};

Il serait donc inutile de spécifier le type dans une déclaration de variable, car le type est dicté par la valeur de la variable. C'est assez courant dans les langues "dynamiques".

45
Matt Ball