Hier ist, was Javascript für Und hier ist, was es für Beachten Sie, dass die Operatoren dasselbe tun, wenn Bei den Links, die Sie angegeben haben, sind die Typen, die verglichen werden, tatsächlich gleich, so dass die beiden Operatoren etwa gleich funktionieren sollten. Unterschiede würden hier auf Implementierungsdetails beruhen - da sie unterschiedliche Dinge tun, können sie für unterschiedliche Zwecke optimiert werden. Theoretisch, da Jedoch sehen Sie den Unterschied, wenn die Typen unterschiedlich sind . Wenn Sie ===
:
==
zu tun hat:
Type(x)
gleich Type(y)
ist. Wenn dies jedoch nicht der Fall ist, muss ==
möglicherweise verschiedene Konvertierungen durchführen, während ===
nur false zurückgibt. ===
weniger macht, würde man denken, dass es immer schneller wäre, aber das scheint für bestimmte Builds von Firefox nicht der Fall zu sein, zumindest wenn diese Benchmarks korrekt sind. "hi" === {}
ausführen, erhalten Sie ~ 66 Millionen Ops / Sekunde, aber für "hi" == {}
haben Sie nur ~ 4 Millionen Ops / Sekunde.
JavaScript ist eine schwach typisierte Sprache, daher wird, wo immer möglich, type cercion angewendet. . .
entspricht Operator
%Vor%Der Strikte Gleichheitsoperator
Es funktioniert wie der normale Gleichheitsoperator, außer dass der strenge Gleichheitsoperator keine Typumwandlung zwischen seinen Operanden vornimmt.
%Vor%Die obigen Ergebnisse sind viel klarer und ermöglichen eine frühzeitige Unterbrechung des Codes. Dies härtet den Code bis zu einem gewissen Grad und führt auch zu Leistungsverbesserungen, wenn die Operanden von verschiedenen Typen sind.
So === schneller als == in Javascript
Hier ist eine gute Referenz
Tags und Links javascript performance