JS 中对象equals方法的实现
来源:互联网 发布:全铝合金拉杆箱 知乎 编辑:程序博客网 时间:2024/06/05 04:40
上次我们谈到Javascript 中 浅拷贝与深拷贝的实现..
这回我们看看如何实现判断两个对像的内容是否相等。
这里有一个克隆结果原则是针对Java语言的,当然JavaScript也可以胜任。
克隆满足的条件
clone()方法将对象复制了一份并返还给调用者。所谓“复制”的含义与clone()方法是怎么实现的有关。一般而言,clone()方法满足以下的描述:
第一、对任何的对象x,都有:x.clone() != x;换言之,克隆对象与原对象不是同一个对象。
第二、对任何的对象x,都有:x.clone().getClass == x.getClass(),换言之,克隆对象与原对象的类型一样;在Javascript getClass 就相当于constructor。
第三、如果对象x的equals()方法是定义恰当的话,那么 x.clone().equals(x)也应当是成立的。
在Java语言的API中,凡是提供了clone()方法的类,都满足上面的这些这些条件。Java语言的设计师在设计自己的clone()方法是,也应当遵守这三个条件。
第三条为可选,不必强制实现的,意思是说只要编制得当,也可以实现。
我们还拿上次的例子看一下:
运行代码框
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
其它对像的equals 方法的样例:
后面一个,我重定义了 Boolean 构造函数,并实现了它的toStirng()方法。
可以瞅瞅。
运行代码框
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
- JS 中对象equals方法的实现
- java对象equals方法的重写
- java对象equals方法的重写
- java对象equals方法的重写
- java对象equals方法的重写
- java对象equals方法的重写
- 关于Java的对象equals方法
- Object对象的通用方法-equals、hashCode
- 比较对象的时候复写equals方法
- 常见对象_Object类的equals()方法
- 对象equals()方法的书写模板
- 浅谈java对象的equals方法
- JAVA中自定义对象比较时重写equals()方法的同时要重写hashcode()方法
- 为什么要重写java中对象的equals方法和hashCode方法以及如何重写
- JS中window对象的常用方法
- js中Math对象的方法
- 扩展js中对象的方法
- js中Math对象的方法
- 一个格式化数值的函数
- 最小堆的实现
- Javascript浅拷贝与深拷贝实现
- 考研路上的迷茫
- Working with XML nodes
- JS 中对象equals方法的实现
- 用层模拟下拉列表框
- 最近需要读的书
- Javascirpt打造“互动指针”特效
- learn xajax in 10 minutes
- 五子棋的人工智能算法
- 在Web页中使用Media Player
- C#读书笔记——编程规则
- 用 prototype 定义自己的方法