isPrototypeOf和hasOwnProperty的区别
类别:Web前端 浏览量:1628
时间:2014-8-19 isPrototypeOf和hasOwnProperty的区别
isPrototypeOf和hasOwnProperty的区别一、isPrototypeOf
isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的原型链中,是则返回true,否则返回false。
格式如下:
object1.isPrototypeOf(object2);
object1是一个对象的实例;
object2是另一个将要检查其原型链的对象。
备注
1、原型链可以用来在同一个对象类型的不同实例之间共享功能。
2、如果 object2 的原型链中包含object1,那么 isPrototypeOf 方法返回 true。
3、如果 object2 不是一个对象或者 object1 没有出现在 object2 中的原型链中,isPrototypeOf 方法将返回 false。
二、hasOwnProperty
hasOwnProperty判断一个对象是否有名称的属性或对象,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。
如果该属性或者方法是该 对象自身定义的而不是器原型链中定义的 则返回true;否则返回false;
格式如下:
object.hasOwnProperty(proName);
判断proName的名称是不是object对象的一个属性或对象。
三、isPrototypeOf和hasOwnProperty的实例
function siteAdmin(nickName,siteName){ this.nickName=nickName; this.siteName=siteName; } siteAdmin.prototype.showAdmin = function() { alert(this.nickName+"是"+this.siteName+"的站长!") }; siteAdmin.prototype.showSite = function(siteUrl) { this.siteUrl=siteUrl; return this.siteName+"的地址是"+this.siteUrl; }; var matou=new siteAdmin("愚人码头","WEB前端开发"); var matou2=new siteAdmin("愚人码头","WEB前端开发"); matou.age="30"; // matou.showAdmin(); // alert(matou.showSite("http://www.css88.com/")); alert(matou.hasOwnProperty("nickName"));//true alert(matou.hasOwnProperty("age"));//true alert(matou.hasOwnProperty("showAdmin"));//false alert(matou.hasOwnProperty("siteUrl"));//false alert(siteAdmin.prototype.hasOwnProperty("showAdmin"));//true alert(siteAdmin.prototype.hasOwnProperty("siteUrl"));//false alert(siteAdmin.prototype.isPrototypeOf(matou))//true alert(siteAdmin.prototype.isPrototypeOf(matou2))//true
标签:javascript
您可能感兴趣
- js打印斐波那契数列(JavaScript输出斐波那契数列的实现方法)
- canvas实现字体粒子爆炸特效(javascript canvas实现雨滴效果)
- JavaScript中使用concat合并数组
- javascript五大继承方式(原生Javascript实现继承方式及其优缺点详解)
- JavaScript 常用的开发规范
- 浏览器怎么显示javascript页面(JavaScript如何通过userAgent判断几个常用浏览器详解)
- javascript四种数组(javascript数组includes、reduce的基本使用)
- canvas3d效果(JavaScript canvas实现七彩太阳光晕效果)
- javascript如何操作文档元素(JavaScript操作元素实例大全)
- javascript怎么生成html控件(JavaScript+html实现前端页面滑动验证2)
- javascript 数据分析(利用JavaScript差集实现一个对比小工具)
- jquery留言板代码(JavaScript实现留言板添加删除留言)
- qt和js相互调用(QT与javascript交互数据的实现)
- js中事件的三个阶段(JavaScript中事件冒泡机制示例详析)
- canvas俄罗斯方块(JavaScript canvas实现俄罗斯方块游戏)
- JavaScript命名空间
- 这部动漫中的女孩子,可比101女孩更加励志(这部动漫中的女孩子)
- 《白狐的人生》热拍 贾征宇偶像包袱难自弃 图(白狐的人生热拍)
- 七夕取消了,牛郎织女没做核酸七夕已经取消(牛郎织女没做核酸七夕已经取消)
- 网友抵制 多地取消 夏日祭 为何惹众怒(网友抵制多地取消)
- 兄弟萌,今年的七夕又取消了 思考 思考(今年的七夕又取消了)
- 七夕取消是什么梗(七夕取消是什么梗)
热门推荐
- 云服务器租用需要注意什么(网站云主机租赁时需要注意哪些事项?)
- JS中Location
- WdatePicker日历控件的用法
- laravel数据绑定(laravel-admin表单提交隐藏一些数据,回调时获取数据的方法)
- ASP.NET如何获取上传图片的宽和高
- phpstudy怎么配置域名并访问(phpstudy怎么绑定目录实现域名访问)
- laravel视图组件(Laravel5.4框架中视图共享数据的方法详解)
- mysql命令输入行在哪(MySQL命令行操作时的编码问题详解)
- linux安装opencv版本(详解ubuntu安装opencv的正确方法)
- C# string 和 stringbuilder 的区别
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9