Jak zrobić tablicę typów danych(obiekt) ściśle równe (===) w JavaScript

0

Pytanie

W mojej aplikacji muszę zrobić dwa rodzaje danych z tablicy(jeden-każdy [], a drugi-liczba[]) równych, przy użyciu ściśle równe.

mój kod wygląda tak:

.składnik.ts

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

W powyższym warunkiem if on wyświetlany jako fałsz, jeśli robię to tak: ===(jeśli używam==, to pokazuje dane(true), ale nie dla ===)

pakiet.stała.ts

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

Dlatego chcę, aby to było prawdziwe w odniesieniu do ww. warunki w ściśle określonym stanie Czy może ktoś mi pomóc w tym

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

Najlepsza odpowiedź

0

Porównaj ścisłej równości (===) ("ścisła równość", "tożsamość", "potrójne równość") : Ścisła równość porównuje dwie wartości równości. Żadna z wartości niejawnie nie przekształca się w dowolną inną wartość przed porównaniem. Jeśli wartości są różne typy, wartości są uważane za nierówne. Jeśli wartości mają jeden i ten sam typ, nie są liczbami i mają taką samą wartość, są uznawane za równe. W przeciwnym przypadku dla porównania kosztów.

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

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

Abstrakcyjne porównanie równości (==) ("wolne równość", "podwójne równość") : Zachowanie dla wykonywania wolnego równości z wykorzystaniem == jest w następujący sposób. Wolne równość porównuje dwie wartości dla równości po konwersji obu wartości w ogólny typ. Po transformacji (jedna lub obie strony mogą podlegać przekształceniom) ostatecznego porównania na równość odbywa się dokładnie tak, jak === wykonuje go.

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

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

Porównaj równości i tożsamości

Dla twojej problemy logiczne uzyskać ten wynik, bo trzeba to wartość tablicy :any[] liczby i przeprowadzić ścisłe porównanie.

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) {
    ...
  }
});

Uwaga: Aby uzyskać więcej informacji na temat tablicy forEach (). prototype.forEach()

Exemple:

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

Dziękuję@miód Aziz CHETOUI , ale na moje wymagania kategorii identyfikatory w tablicy (ja.e-publicznych categoryIds: każdy[] = []; ) i nrtPatchCategory pokój(nrtPatchCategory : 30)do tego, jak mogę zrobić to tak ściśle są równe(===) czy możecie, proszę, pomóż mi, aby to było by przydatne dla mojego wymagania
user93

Witamy, edytuję odpowiedź i piszę na podstawie twojego komentarza, mam nadzieję, że to będzie pomocne.
Med Aziz CHETOUI

W innych językach

Ta strona jest w innych językach

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