当与另一个实例进行比较时,我的类实例如何隐式返回数字



看看这个例子:

var d1 = new Date(2016,4,1);
var d2 = new Date(2016,4,2);
if (d2 > d1){ .... }

正如您在date对象中看到的,当您比较两个实例时,它们隐式返回该实例的getTime()方法。

我想对我的对象做完全相同的事情。

想象一下,我的课是这样的:

var myClass = function (arg1,arg2,arg3){
   ....
   ....
   ....
   this.myNumber = function (){
         return arg1 + arg2+ arg3;
   }
}

当我比较类的两个实例时,它会比较它们的myNumber()方法的值。

为类定义一个valueOf()方法:

var myObj = function(arg1,arg2,arg3) {
   ....
   ....
   ....
   this.valueOf = function() {
     return arg1 + arg2+ arg3;
   }
}

请参阅JS Bin演示。

相关内容

  • 没有找到相关文章

最新更新