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 |