js的hasownproperty使用示例
更新時(shí)間:2014年03月02日 16:00:51 作者:
我們?cè)趈s中可能經(jīng)常會(huì)用到for in來遍歷對(duì)象中的屬性,當(dāng)然for in中得到的屬性,只能是可枚舉的屬性,for in的時(shí)候,它會(huì)把對(duì)象的屬性(包括原型的屬性)遍歷一遍,看面看示例就明白了
例如:
有這么一段代碼:
復(fù)制代碼 代碼如下:
var array = [];
array.push(1);
array.push(2);
array.push(3);
for(var i in array) {
console.log(i+":"+array[i]);
}
此時(shí)會(huì)輸出什么呢?當(dāng)然是0:1 1:2 2:3
但是如果在for in之前加上Array.prototype.say = "hello";
再次運(yùn)行會(huì)輸出什么呢?
復(fù)制代碼 代碼如下:
0:1 1:2 2:3 say:hello
看到了吧,這個(gè)時(shí)候,它會(huì)輸出原型的屬性
在很多時(shí)候,我們不需要遍歷它原型的屬性,還有一個(gè)原因就是,我們現(xiàn)在用到的對(duì)象,我們不能保證,其他開發(fā)人員,有沒有,在它的原型上加一些屬性呢?所以呢,我們就過濾一下我們對(duì)象的屬性吧,這個(gè)時(shí)候就用到了hasOwnProperty方法,如下:
復(fù)制代碼 代碼如下:
for(var i in array){
if(array.hasOwnProperty(i)) {
console.log(i+":"+array[i]);
}
}
再想想現(xiàn)在會(huì)輸出什么呢?當(dāng)然是0:1 1:2 2:3啦。
您可能感興趣的文章:
- js中hasOwnProperty()方法詳解
- js中hasOwnProperty的屬性及實(shí)例用法詳解
- JavaScript中in和hasOwnProperty區(qū)別詳解
- JavaScript hasOwnProperty() 函數(shù)實(shí)例詳解
- JS中的hasOwnProperty()和isPrototypeOf()屬性實(shí)例詳解
- javascript中hasOwnProperty() 方法使用指南
- Javascript學(xué)習(xí)筆記之 對(duì)象篇(三) : hasOwnProperty
- js中的hasOwnProperty和isPrototypeOf方法使用實(shí)例
- Javascript中的for in循環(huán)和hasOwnProperty結(jié)合使用
- 理解JAVASCRIPT中hasOwnProperty()的作用
- JS中hasOwnProperty方法用法簡介
相關(guān)文章
深入理解JavaScript中的塊級(jí)作用域、私有變量與模塊模式
本篇文章詳細(xì)的介紹了JavaScript中的塊級(jí)作用域、私有變量與模塊模式,詳細(xì)介紹了塊級(jí)作用域、私有變量與模塊模式,對(duì)學(xué)習(xí)JavaScript很有幫助。2016-10-10Javascript基礎(chǔ)教程之定義和調(diào)用函數(shù)
這篇文章主要介紹了Javascript基礎(chǔ)教程之定義和調(diào)用函數(shù)的相關(guān)資料,需要的朋友可以參考下2015-01-01JavaScript的instanceof運(yùn)算符學(xué)習(xí)教程
instanceof運(yùn)算符可以用來判斷某個(gè)構(gòu)造函數(shù)的prototype屬性所指向的對(duì)象是否存在于另外一個(gè)要檢測(cè)對(duì)象的原型鏈上,這里我們就來看一下JavaScript的instanceof運(yùn)算符學(xué)習(xí)教程2016-06-062019年度web前端面試題總結(jié)(主要為Vue面試題)
轉(zhuǎn)眼2019又要過去了,作為一名前端碼農(nóng),又熬過一個(gè)沒日沒夜的年頭,頭發(fā)又少了不少,去年的學(xué)習(xí)計(jì)劃一半也沒完成,唉。。。 現(xiàn)在為大家總結(jié)一下這一年面試的幾家公司的關(guān)于前端面試題吧2020-01-01