I have created new objects with Dojo.declare. How to overload operator == for objects ?
operators in javascript are used to compare two values. The == operator checks if two values are equal. The != operator checks if two values are not equal.
The strict equality operator ( === ) checks whether its two operands are equal, returning a Boolean result. Unlike the equality operator, the strict equality operator always considers operands of different types to be different.
Operator Overloading in JavaScript, yes you can!
You can't overload ==
, but ==
has an implicit .toString()
call, so whatever .toString()
returns will allow you to effectively overload ==
(kinda):
function foo(){}
foo.prototype.toString = function(){ return 42; }
var x = new foo();
x == 42; // true
As for how to do this in Dojo, I don't use Dojo, sorry, but the gist is that you get a reference to whatever object is creates and add thatObject.prototype.toString
as in my example.
You can't. JavaScript doesn't support operator overloading.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With