Wie können Sie überprüfen, ob zwei oder mehr Objekte/vars die gleiche Referenz haben?Wie überprüft man, ob zwei vars die gleiche Referenz haben?
35
A
Antwort
49
Sie verwenden ==
oder ===
:
var thesame = obj1===obj2;
Wenn beide Operanden-Objekte sind, dann JavaScript interne Referenzen vergleicht, die gleich sind, wenn Operanden auf das gleiche Objekt in Speicher beziehen.
13
Die Gleichheits- und Striktgleichheitsoperatoren sagen Ihnen, ob zwei Variablen auf dasselbe Objekt zeigen.
foo == bar
foo === bar
3
Mögliche Algorithmus:
Object.prototype.equals = function(x)
{
var p;
for(p in this) {
if(typeof(x[p])=='undefined') {return false;}
}
for(p in this) {
if (this[p]) {
switch(typeof(this[p])) {
case 'object':
if (!this[p].equals(x[p])) { return false; } break;
case 'function':
if (typeof(x[p])=='undefined' ||
(p != 'equals' && this[p].toString() != x[p].toString()))
return false;
break;
default:
if (this[p] != x[p]) { return false; }
}
} else {
if (x[p])
return false;
}
}
for(p in x) {
if(typeof(this[p])=='undefined') {return false;}
}
return true;
}
Verwandte Themen
- 1. Wie überprüft man, ob die Permutationen die gleiche Parität haben?
- 2. wie überprüft man, ob zwei Tabellen/Objekte in Lua die gleiche Identität haben
- 3. Wie überprüft man, ob zwei jQuery-Selektoren das gleiche Element ausgewählt haben?
- 4. Wie überprüft man, ob alle Einträge in einem Zellenfeld die gleiche Größe haben?
- 5. Matplotlib: Wie man zwei Histogramme die gleiche Behälterbreite haben lässt?
- 6. Wie überprüft man, ob zwei Dateinamen auf die gleiche physische Datei zeigen
- 7. Wie überprüft man, ob zwei Arrays die gleichen Werte enthalten?
- 8. PHP (coderigniter) - Wie überprüft man, ob die nächsten zwei Zeilen Wert haben?
- 9. Wie überprüft man, ob zwei Datenrahmen gleich sind
- 10. Wie überprüft man, ob zwei SQL Server-Datenbanken gleiche Daten enthalten?
- 11. wie überprüft man, ob zwei Matrizen in OpenCV identisch sind
- 12. Wie überprüft man, ob Verzeichnisinhalte sich mit PHP verändert haben?
- 13. Wie überprüft man, ob zwei Objekte von derselben Basisklasse erben?
- 14. Wie überprüft man, ob eine Zeichenfolge zwei Sternchen enthält?
- 15. Wie überprüft man, ob die Schnittstelle ist
- 16. Wie überprüft man, ob zwei Wörter Anagramme sind Python
- 17. Wie man überprüft, ob zwei NSDates vom selben Tag sind
- 18. Wie überprüft man, ob localhost
- 19. Eclipse: Haben Sie die gleiche Datei in zwei Editoren geöffnet?
- 20. Wie überprüft man, ob Konturen gleich sind?
- 21. Wie überprüft man, ob zwei Formatzeichenfolgen kompatibel sind?
- 22. Wie überprüft man, ob zwei Pfade in Bash gleich sind?
- 23. Wie überprüft man, ob zwei Knoten verbunden sind?
- 24. Wie überprüft man, ob sich zwei Zeitbereiche überschneiden?
- 25. Wie überprüft man, ob UIButton target hat?
- 26. sage mathematik: wie überprüft man, ob zwei Ausdrücke äquivalent sind?
- 27. Laravel Überprüfen Sie, ob Benutzer die gleiche Beziehung haben
- 28. Wie überprüft man, ob eine Verzweigung das gleiche wie die Master-Verzweigung enthält?
- 29. Wie überprüft man, ob zwei Arrays gleicher Größe die gleichen Werte in C haben? (Komplexität O (n))
- 30. PHP: Wie überprüft man, ob Query String oder POST Vars dasselbe var zweimal enthalten?