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
您可能感兴趣
- javascript的作用域详解精简版(浅谈JavaScript 中的延迟加载属性模式)
- js原生tab栏切换(JavaScript实现简易tab栏切换案例)
- js宏任务都有哪些(JavaScript 操作宏任务与微任务)
- mvc JavaScriptResult的用法
- web中如何预防xss攻击(详解前端安全之JavaScript防http劫持与XSS)
- 用css实现图片特效代码(HTML+CSS+JavaScript实现图片3D展览的示例代码)
- js中什么是宏任务(浅谈JavaScript宏任务和微任务执行顺序)
- JavaScript中实现AES加密解密
- javascript:; 和javascript:void(0);
- js使用递归解析(关于JavaScript递归经典案例题详析)
- javascript函数的递归调用记得加上return
- javascript怎么生成html控件(JavaScript+html实现前端页面滑动验证2)
- javascript怎么判断对象类型(JavaScript对象内置对象,值类型和引用类型讲解)
- javascript五大继承方式(原生Javascript实现继承方式及其优缺点详解)
- javascript如何判断类型(JavaScript如何优化逻辑判断代码详解)
- js淘宝购物车效果代码(JavaScript实现电商平台商品细节图)
- 春节放假几天(春节放假几天2023法定几天)
- 今天 3月13日,31年前,一个英雄少年感动了中国(今天3月13日31年前)
- 你好,新成理人丨成都理工大学2019级新生开学典礼隆重举行(新成理人丨成都理工大学2019级新生开学典礼隆重举行)
- 这部民警编演的红色话剧,讲述了一个不断追寻的故事(这部民警编演的红色话剧)
- 日本菜有什么好吃(日本菜有什么好吃的做法)
- 韩国泡菜做法(韩国泡菜的做法步骤)
热门推荐
- django怎么创建模板文件(django模板加载静态文件的方法步骤)
- sqlserver 查询锁(sqlserver:查询锁住sql以及解锁方法)
- sql server 2016配置管理(SQL Server 2016 配置 SA 登录教程)
- 远程给docker容器执行命令(Docker命令让普通用户能够执行的实现)
- sql server性能调优(SQL Server性能调优之缓存)
- 微信小程序实现自动定位(微信小程序实现锚点定位功能的方法实例)
- 怎么调用dede自定义表单(DEDE实现转跳属性文档在模板上调用出转跳地址)
- 使用谷歌浏览器模拟移动端打开网页
- python基础教学之125 装饰器简介(python3 property装饰器实现原理与用法示例)
- docker目录映射不起作用(关于dockerfile build过程中报/bin/sh: pip: command not found的解决方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9