如何比较函数/对象是否相等
时间:2011-09-16
来源:互联网
<html>
<head><title>JS 测试函数</title>
</head>
<body>
<script>
function func(){};
obj1=new func();
obj2=new func();
alert(obj1==obj2);
</script>
</body>
</html>
为什么显示是false呢?
作者: shijuren 发布时间: 2011-09-16
作者: danica7773 发布时间: 2011-09-17
创建的对象有不同的引用,当然不相等。
作者: Acesidonu 发布时间: 2011-09-17
作者: Sencha_Android 发布时间: 2011-09-17
1:new func()在内存开辟空间创建对象并返回该对象的内存地址。
2:obj1和obj2像指针一样的变量,里面的值是1中创建对象的内存地址
3:直接用==比较的时候比较的时候是比较obj1和obj2变量里的值。
如果你想看这两个对象是否是通一个构造函数(也就是你上面的func函数)创建的。
应该使用
JScript code
obj1.constructor==obj2.constructor
实际使用中,这个那个func里面应该有属性。根据业务属性来判断是否相等。
作者: hackerster 发布时间: 2011-09-17
作者: aspwebchh 发布时间: 2011-09-17
obj2=new func();
每次new的时候 会分配一块内存 其地址永远是不会一样的 虽然是同一个对象
作者: fanchuanzhidu 发布时间: 2011-09-17
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28