Javascript est un langage très faiblement typé. Par exemple, les tableaux de type Array peuvent contenir tous les types d’objets (nombres, chaines de caractères etc.).
Cependant, dans le cas où il serait nécessaire de manipuler des tableaux de nombres (exclusivement), il est bien plus judicieux (et rapide) d’utiliser des tableaux composés uniquement de nombres.
De plus, il peut aussi s’avérer intéressant de sélectionner le type de représentation des nombres : entier (signé ou non), réel, mais aussi la précision de cette représentation (8, 16, 32 ou 64 bits).
Dans le cas de notre implémentation de JavaScript et dans le but de manipuler des fichiers de données numérique (en provenance de la capture du mouvement), plusieurs objets de type vecteur ont été proposé :
Nom | Description | type |
---|---|---|
Float64Vector | vecteur de nombres réels en double précisions | double (64 bits) |
Float32Vector | vecteur de nombres réels simple précision | float (32 bits) |
Int32Vector | vecteur de nombres entiers signés | integer (32 bit) |
Int16Vector | vecteur de nombres entiers signés en simple précision | integer (16 bits) |
Int8Vector | vecteur de nombre entiers 8 bits | char (8 bits) |
UInt32Vector | vecteur de nombres entiers non signés | unsigned integer (32 bits) |
UInt16Vector | vecteur de nombres entiers non signés en simple précision | unsigned integer (16 bits) |
UInt8Vector | vecteur de nombres entiers non signés 8 bits | unsigned char (8 bits) |
tous ces vecteurs possèdent tous les mêmes méthodes.
Syntaxe
var a = new Float64Vector(1000);
Fonctions
Nom | Description | syntaxe |
---|---|---|
get | retourne un élément du vecteur | var e = vec.get(1); |
set | assigne une valeur d'un élément du vecteur | vec.set(2, 3.14159); |
sort | trie (ascendant) du vecteur. Cette méthode modifie le vecteur | vec.sort(); |
scale | multiplie tous les éléments du tableau par une valeur | vec.scale(100.0); |
norm | retourne la norme du vecteur | var n = vec.norm(); |
normalize | normalise les valeurs du vecteur. Cette méthode modifie le vecteur | vec.normalize(); |
size | retourne le nombre d'élément du tableau | var length = vec.size() |
reverse | transpose les éléments du vecteur. Cette méthode modifie le vecteur. | vec.reverse(); |
shift | La méthode shift() permet de retirer le premier élément d'un vecteur et de renvoyer cet élément. Cette méthode modifie la longueur du vecteur. | var e = vec.shift(); |
unshift | Cette méthode ajoute un ou plusieurs éléments au début du vecteur et renvoie la nouvelle longueur du vecteur. | vec.unshift(12, 34, 56.8); |
concat | Cetteméthode renvoie un nouveau vecteur qui est le résultat de la concaténation entre le vecteur original et les arguments de la fonction qui sont des vecteurs ou des valeurs numériques. | var v = vec.concat(v2); |
slice | Cette méthode renvoie un vecteur, contenant une copie partielle du vecteur d'origine. | var v = vec.slice(debut, fin); |
fill | Cette méthode remplit tout les éléments d'un vecteur entre deux index avec une valeur statique. | vec.fill(valeur[, début = 0[, fin = this.length]]); |
type | cette méthode renvoie le type des données sous la forme d'une chaîne de caractères | var ts = vec.type(); |