Types de données

Objectif

  • Découvrir les différents types de données.

Mise en situation

Pour manipuler et traiter des données, on associe un type à chacune d'entre elles. Un ordinateur ne traite que des informations binaires, toutes les données sont donc converties en suite de 0 et de 1. Comment dans ce cas différencier une lettre d'un nombre ou un booléen d'une suite de caractères ? Grâce aux types de données. Celui-ci va permettre de définir de quelle manière doivent être réalisées les opérations sur les données. En effet ajouter 2 nombres ne se fait pas de la même manière que la concaténation de 2 chaînes de caractères.

DéfinitionType de donnée

Une donnée peut être un nombre, un caractère, une suite de caractères, etc.

Le type d'une donnée, c'est donc la catégorie que le programme va associer à celle-ci. Le type détermine la place occupée en mémoire par la donnée, les traitements possibles sur celle-ci ou le comportement d'un opérateur.

DéfinitionLes types principaux

En JavaScript les types principaux sont :

  • les nombres (entiers ou flottants) number,

  • les chaînes de caractères string

  • et les booléens bool.

En Python les types principaux sont :

  • les nombres entiers int,

  • les nombres flottants (c'est à dire les nombres à virgule) float,

  • les chaînes de caractères str

  • et les booléens bool.

MéthodeConnaître le type

En JavaScript la fonction typeof() permet de connaître le type d'une variable.

En Python il s'agit de la fonction type().

Exemple

1
/** Javascript */
2
let word = 'Hello'
3
let value = 42
4
console.log(typeof(word))
5
console.log(typeof(value))

Ce programme affiche :

1
string
2
number
3

ExempleComportement de l'opérateur + selon le type de données

L'opérateur + peut être utilisé avec des nombres ou avec des chaînes de caractères, son comportement dépend justement du type de données manipulées.

1
/** JavaScript */
2
const number1 = 1
3
const number2 = 4
4
const letter1 = '1'
5
const letter2 = '4'
6
console.log(number1 + number2)
7
console.log(letter1 + letter2)
1
"""Python."""
2
number1 = 1
3
number2 = 4
4
letter1 = '1'
5
letter2 = '4'
6
print(number1 + number2)
7
print(letter1 + letter2)

Ces deux programmes retournent :

1
5
2
14

Les variables number1 et number2 ont été additionnées avec l'opérateur + alors que les variables letter1 et letter2 ont été concaténées avec le même opérateur, parce que les données number1 et number2 ne sont pas de même type que les données letter1 et letter2 (type number et type string en JavaScript).

Avec des données de type booléen, l'opérateur + correspond à l'opération logique ou.

Complémenttypeof

Le mot-clé typeof peut être utilisé comme une fonction (comme nous l'avons vu ici), ou bien comme opérateur unaire, ainsi les deux instructions d'affichage suivantes sont équivalentes :

1
/** Javascript */
2
let word = 'Hello'
3
console.log(typeof(word))
4
console.log(typeof word)

ComplémentD'autres types de données

Il existe d'autres type de données comme les tableaux ou les objets.

Un tableau est une collection de variables type quelconque, rangées les unes à la suite des autres dans la mémoire.

Les tableaux sont en général utilisés pour stocker et traiter des données de même nature.

Dans l'exemple suivant le tableau temp contient des températures, les températures sont séparées par des virgules.

1
"""Python."""
2
temp = [21, 24, 18, 19]
1
/** JavaScript */
2
const temp = [21, 24, 18, 19]

À retenir

Le type d'une donnée correspond à la catégorie de cette donnée (nombre, chaîne de caractères, etc.), ce type indique au programme comment il doit manipuler et traiter celle-ci.