Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

SIMD.%type%.equal()

Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode statique SIMD.%type%.equal() renvoie un masque de sélection dont les valeurs dépendent de l'égalité stricte des valeurs des voies des arguments passés (a == b).

Syntaxe

SIMD.Float32x4.equal(a, b)
SIMD.Float64x2.equal(a, b)

SIMD.Int8x16.equal(a, b)
SIMD.Int16x8.equal(a, b)
SIMD.Int32x4.equal(a, b)

SIMD.Uint8x16.equal(a, b) 
SIMD.Uint16x8.equal(a, b) 
SIMD.Uint32x4.equal(a, b)

Paramètres

a
Une instance d'un type SIMD.
b
Une autre instance d'un type SIMD.

Valeur de retour

Un masque de sélection (de type Bool64x2, Bool32x4, Bool16x8 ou Bool8x16 selon la taille). Les valeurs des voies du masque valent true ou false selon le résultat de a == b.

Description

La méthode SIMD.%type%.equal est une des opérations de comparaison SIMD et ne fournit pas le résultat direct des tests d'égalité mais un masque de sélection avec les valeurs booléennes correspondantes.

Exemple

Sélectionner les voies égales de deux vecteurs

Dans cet exemple, on compare les valeurs des voies de deux vecteurs SIMD float32x4 et on crée un masque de sélection par rapport à ce résultat. Le masque de sélection est ensuite utilisé pour sélectionner les valeurs qui sont égales et former un nouveau float32x4. Pour les voies pour lesquelles les vecteurs a et b avaient des valeurs différentes, le vecteur résultant utilisera le vecteur zero qui est rempli de 0.

var a = SIMD.Float32x4(1, 2, 3, 9);
var b = SIMD.Float32x4(1, 4, 7, 9);

var masque = SIMD.Float32x4.equal(a,b);
// Bool32x4[-1, 0, 0, -1]

var zero = SIMD.Float32x4(0, 0, 0, 0);

var résultat = SIMD.Float32x4.select(masque, a, zero);
// Float32x4[1, 0, 0, 9]

Spécifications

Spécification Statut Commentaires
SIMD
La définition de 'SIMDConstructor.equal' dans cette spécification.
Projet Définition initiale.

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple Pas de support Nightly build Pas de support Pas de support Pas de support
Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple Pas de support Pas de support Nightly build Pas de support Pas de support Pas de support

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,