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 |