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

标签 javascript object compare object-comparison

看这个例子:

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

正如您在日期对象中看到的,当您比较两个实例时,它们会隐式返回此实例的 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;
   }
}

参见 a JS Bin demo .

关于javascript - 与另一个实例进行比较时,我的类实例如何隐式返回一个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37077951/

相关文章:

javascript - 在外部 JS 文件中使用 $ 或 JQuery 关键字

javascript - 使用Async/Await调用Async函数给对象中的key赋值

ios - 通过触摸为 UITextView 中的句子添加下划线

Java 时钟项目 - 勾选方法输出 "0"而不是 "00"分钟和秒,修复 AM PM 的输出

javascript - 推送到数组并比较两个数组 JavaScript

Pandas 比较数据框和系列的最有效方法

javascript - 仅返回对象的第一个元素

javascript - 三层连接盒

javascript - 连接来自多维数组和 HTML 的数据

python - 使用 Python 查找两个文本文件的段落中的重复关键字,并在新的文本文件中列出结果(比较它们)