私はJavaScriptで式パーサーを作成しています。オブジェクトの関数を論理演算子/演算子に割り当てる方法はありますか?演算子がそのオブジェクトで使用されるたびに呼び出されるようにする方法はありますか?オブジェクトの関数に論理演算子を割り当てる方法は?
たとえば、オブジェクトを文字列に連結しようとすると、自動的にオブジェクトの.toString()
メソッドが呼び出されます。
たとえば、this.number
という属性のオブジェクトがあるとします。私は、次の操作を実行できるようにしたかった:
function MyObject(number) {
this.number = number;
}
var obj1 = new MyObject(2);
var obj2 = new MyObject(3);
obj1 *= obj2;
obj2 *= 3;
obj1.number; // Would return 6.
obj2.number; // Would return 9.
この場合、それは、インスタンスのthis.number
値を掛けるだろう毎回は、それがMyObject
のインスタンスに値を割り当てるために呼ばれたように、私は*=
演算子をオーバーライドしているだろうその右側の値(プリミティブな数値またはその他のインスタンスのthis.number
の値)で指定します。
これを達成する方法はありますか?
何か助けが素晴らしいだろう!
おかげで
をhttp://stackoverflow.com/questions/19620667/javascript-operator-過負荷 – 1000111