Ako zarobiť na pole typy údajov(objekt) ako úplne rovnaké (===) v Javascripte

0

Otázka

V mojej aplikácii musím urobiť dve pole datatypes(jeden je akýkoľvek[] a iné je číslo[]) ako rovný s použitím úplne rovnaké.

môj kód je:

.komponent.ts

 if (categoryIds ===  PhysicalPackageConst.nrtPatchCategory){
               this.materialTypes = PhysicalPackageConst.nrtPatchMaterialType;
categoryIds = [];
            
                  }

Vo vyššie uvedenom prípade, ak podmienka je zobrazené ako nepravdivé, ak som sa, aby to tak ===(ak môžem použiť == to je zobrazené údaje(pravda), ale nie pre ===)

package.konštantný.ts

export const PhysicalPackageConst = {
nrtGumCategory : [29],
    nrtPatchCategory : [30]

Tak chcem, aby to tak platí aj pre vyššie uvedené podmienky v prísne podmienky Môže mi niekto pomôcť mi na tomto

angular javascript operators typescript
2021-11-24 06:52:46
1

Najlepšiu odpoveď

0

Prísne Rovnosť Porovnanie (===) ("prísne rovnosť", "identita", "triple rovná sa") : Prísne rovnosť porovnáva dve hodnoty pre rovnosť. Ani hodnota je implicitne previesť na inú hodnotu, než je v porovnaní. Ak majú hodnoty rôznych typov, hodnoty sú považované za nerovné. Ak hodnoty majú rovnaký typ, nie sú čísla, a majú rovnakú hodnotu, sú považované za rovnocenné. Inak porovnať hodnoty.

var num = 0;
var str = '0';

console.log(num === str); // false

Abstrakt Rovnosť Porovnanie (==) ("voľné rovnosť", "double" sa rovná") : správanie na vykonanie voľné rovnosti pomocou == je takto. Voľné rovnosť porovnáva dve hodnoty pre rovnosť po konverzii obe hodnoty na bežný typ. Po konverzie (jednej alebo na oboch stranách môžu podstúpiť konverzie), konečné rovnosť porovnanie je vykonávané presne tak, ako === vykonáva to.

var num = 0;
var str = '0';

console.log(num === str); // true

Rovnosť porovnania a rovnakosť

Na váš problém, je to logické, aby si tie výsledok, pretože sa musíte cast hodnota pole :všetky[] na číslo a, aby prísne porovnať.

let categoryIds: any[] = [];
let nrtPatchCategory: number = 30;
// browse categoryIds arrays (you can use any other method like for ...)
categoryIds.forEach(categoryId => {
  if (Number(categoryId) === nrtPatchCategory) {
    ...
  }
});

Poznámka: Pre viac podrobností forEach() Pole.prototyp.forEach()

Exemple:

console.log(2 === Number('3')); // false
console.log(3 === Number('3')); // true
2021-11-24 08:47:02

Vďaka@Med Aziz CHETOUI , ale V mojej požiadavky kategórie Id array (som.e verejného categoryIds: všetky[] = []; ) a nrtPatchCategory je číslo(nrtPatchCategory : 30)Na to, Ako môžem, aby to tak úplne rovnaké(===) môžete mi prosím pomôžte mi za To, že by bolo užitočné pre moje požiadavky
user93

Ste vítaní, som sa upraviť moju odpoveď a im založený na váš komentár, dúfam, že je to užitočné.
Med Aziz CHETOUI

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................