Rigoroso Confronto di Uguaglianza (===) ("uguaglianza rigorosa", "identità", "tripla è uguale a") : uguaglianza Rigorosa confronta due valori di uguaglianza. Nessun valore è implicitamente convertito in un valore prima del confronto. Se i valori sono diversi tipi, i valori sono considerati uguali. Se i valori sono dello stesso tipo, che non sono numeri, e hanno lo stesso valore, sono considerati uguali. Altrimenti per confrontare il valore.
var num = 0;
var str = '0';
console.log(num === str); // false
Abstract Confronto di Uguaglianza (==) (si stacca"uguaglianza", "doppio uguale") : Il comportamento per l'esecuzione sciolto parità di utilizzo ==
è come indicato di seguito. Sciolto l'uguaglianza confronta due valori per la parità dopo la conversione di entrambi i valori di un tipo comune. Dopo le conversioni (uno o entrambi i lati possono essere sottoposti a conversioni), finale di parità il confronto viene eseguito esattamente come ===
esegue.
var num = 0;
var str = '0';
console.log(num === str); // true
Confronto di uguaglianza e identità
Per il tuo problema, è la logica per ottenere quei risultati, perché è necessario lanciare il valore di array :qualsiasi[] per numero e rendere rigoroso confrontare.
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) {
...
}
});
Nota: Per ulteriori dettagli forEach() Array.prototipo.forEach()
Esempio:
console.log(2 === Number('3')); // false
console.log(3 === Number('3')); // true