hasOwnProperty是用来判断一个对象是否有你给出名称的属性或对象。
需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。
格式如下: object.hasOwnProperty(proName);
判断一个对象是否包含自定义属性而不是原型链上的属性,我们需要使用继承自Object.prototype的hasOwnProperty方法。
-----------------------------------------------------
利用hasOwnProperty,我们可以实现剔除数组中重复项:
/**
* 针对字符串或者数字数组,剔除数组中重复项("123"与123看做相同)
*/
function removeDuplicates(arr){
var i, len=arr.length;
var array=[], obj={};
for(i=0; i<len; i++){
if(!obj.hasOwnProperty(arr[i])){
array.push(arr[i]);
obj[arr[i]] = true;
}
}
return array;
}
分享到:
相关推荐
可以直接使用的代码:软件开发网修正版 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]下面是进阶教程与说明,喜欢跟深入的朋友可以参考下。... for (i in o) { if (lang.hasOwnProperty(o, i)) {
hasOwnProperty hasOwnProperty是javascript中用于检测对象是否...有一个用hasOwnProperty实现数组去重的方法: var arr = ['a', 'b', 'c', 'b']; function uniqueArr(arr){ var unique = [], temp = {}; for(var
JavaScript中hasOwnProperty函数方法是返回一个布尔值,指出一个对象是否具有指定名称的属性。 hasOwnProperty()使用方法: object.hasOwnProperty(proName)其中参数object是必选项。一个对象的实例。proName是必...
1、实现思路:主要就是利用原型(prototype)的hasOwnProperty方法,确定对象中的项是该添加、移除还是取出某个匹配的项等。hasOwnProperty比遍历数组取值灵巧快速的地方在于:至少从代码上来看,它是O(1)复杂度的...
实例如下: var aaa = { "0":"a", "1":"b", "2":"c", ...以上这篇js判断数组key是否存在(不用循环)的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。
JS中复合数组associative array和对象是等同的,判断一个key是否存在于数组中(或对象是否包含某个属性),不能使用ary[key] == undefined,因为可能存在ary = {key:undefined};正确的方法应该为: ary.hasOwnProperty...
hasOwnProperty() 方法用来判断某个对象是否含有指定的自身属性。 语法 obj.hasOwnProperty(prop) 参数 •prop •要检测的属性名称。 描述 所有继承了 Object.prototype 的对象都会从原型链上继承到 ...
JavaScript中hasOwnProperty函数方法是返回一个布尔值,指出一个对象是否具有指定名称的属性。 使用方法:object.hasOwnProperty(proName) 其中参数object是必选项。一个对象的实例。proName是必选项。一个属性名称...
js中hasOwnProperty的属性及实例用法详解.docx
主要介绍了js中的hasOwnProperty和isPrototypeOf方法使用实例,需要的朋友可以参考下
Js中使用hasOwnProperty方法检索ajax响应对象的例子.docx
hasOwnProperty()函数用于指示一个对象自身(不包括原型链)是否具有指定名称的属性。下面通过本文给大家分享JavaScript hasOwnProperty() 函数实例讲解,感兴趣的朋友一起看看吧
这两个属性都是Object.prototype所提供:Object.prototype.hasOwnProperty()和Object.prototype.isPropertyOf() 先讲解hasOwnProperty()方法和使用。在讲解isPropertyOf()方法和使用 看懂这些至少要懂原型链 一、...
in操作符只要通过对象能访问到属性就返回true。hasOwnProperty()只在属性存在于实例中时才返回true。下面通过本文给大家分享JavaScript中in和hasOwnProperty区别详解,感兴趣的朋友一起看看吧
// Poisoning Object.prototype Object.prototype.bar = 1; var foo = {goo: undefined}; foo.bar;...Javascript 中没有其他方法能判断一个属性是定义在对象本身还是继承自原型链。 hasOwnProperty 作为
js-Polyfill_Object-...//Polyfilled & Native:console.dir([obj1.hasOwnProperty('a'),//trueobj1.hasOwnProperty('b'),//trueobj1.hasOwnProperty('c'),//falseobj2.hasOwnProperty('a'),//trueobj2.hasOwnProperty
当检测某个对象是否拥有某个属性时,hasOwnProperty 是唯一可以完成这一任务的方法,在 for in 循环时,建议增加 hasOwnProperty 进行判断,可以有效避免扩展本地原型而引起的错误