易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript isPrototypeOf和hasOwnProperty使用区别

1、isPrototypeOf
isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的原型链中,是则返回true,否则返回false。
格式如下:
object1.isPrototypeOf(object2);
object1是一个对象的实例;
object2是另一个将要检查其原型链的对象。
原型链可以用来在同一个对象类型的不同实例之间共享功能。
如果 object2 的原型链中包含object1,那么 isPrototypeOf 方法返回 true。
如果 object2 不是一个对象或者 object1 没有出现在 object2 中的原型链中,isPrototypeOf 方法将返回 false。
使用举例如下:
var re = /^\s*/;
// 这里定义一个正则表达式对象
// 这里检查RegExp是不是re的原形链对象,返回true
var bIsptt = RegExp.prototype.isPrototypeOf(re);
 
 2、hasOwnProperty
hasOwnProperty判断一个对象是否有名称的属性或对象,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。
如果该属性或者方法是该 对象自身定义的而不是器原型链中定义的 则返回true;否则返回false;
格式如下:
object.hasOwnProperty(proName);
判断proName的名称是不是object对象的一个属性或对象。使用举例如下
// 得到false, 因为不能检测原型链中的属性
var bStr = "Test String".hasOwnProperty("split");
// String对象的原型上本来就有这个属性,自然返回true
var bStr1 = String.prototype.hasOwnProperty("split");
// 返回true,因为不是检测原型中的属性
var bObj = ({fnTest:function(){}}).hasOwnProperty("fnTest");


相关文档:

JavaScript与Java的区别

JavaScript是一种通用的、基于原型的、面向对象的脚本语言,而脚本语言就是指可以和Html语言混合使用的语言
1.JavaScript与Java的区别
     A. JavaScript是解释型的语言,当程序执行的时候,浏览器一边解释一边执行。而Java是编译型的语言,必须经过编译才能执行
     B. 代码 ......

javascript微型模板系统

由于后台模板系统的强大,如rails的erb,javascript的模板系统一直处于被打压状态,但又由于后台的技术发展过快,日新月异,以及Ajax应用的普及,javascript还是有一藉之地的。如我们要从后台返回一个HTML片断,但事实上我们永远只能返回文本(responseText)或responseXML,如果你得到是json,其实后台已稍稍调用javascrip ......

在JavaScript中创建新对象

在JavaScript中创建新对象
(李晓华 2001年04月29日 01:50)
  使用JavaScript可以创建自己的对象。虽然JavaScript内部和浏览器本身的功能已十分强大,但JavaScript还是提供了创建一个新对象的方法。使其不必像超文本标识语言那样,求于或其它多媒体工具,就能完成许多复杂的工作。
  在JavaScript中创建一个新的对 ......

javascript 对象的property和prototype

javascript
对象的property和prototype

这样一种关系
ECMAScript可以识别两种类型的对象,一种叫做Native Object属于语言范畴;一种叫做Host Object,由运行环境提
供例如document对象,
Dom Node等
Native objects是一种松散的结构并且可以动态的增加属性(property),所有的属性都有一个名字和一个值,这个值 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号