摘要:沒有在中添加屬性定義一個對象定義一個數(shù)組用來接受定義一個數(shù)組用來接受取得循環(huán)內(nèi)逐一打印值在中添加屬性使用循環(huán)遍歷對象的屬性時,原型鏈上的所有屬性都將被訪問。
在使用for in循環(huán)時,返回的是所有能夠通過對象訪問的、可枚舉的屬性,其中既包括存在于實例中的屬性,也包括存在于原型中的屬性。
(1)沒有在Object.prototype中添加屬性
var obj={"name":"wjy","age":26,"sex":"female"};//定義一個object對象 var keys=[];//定義一個數(shù)組用來接受key var values=[];//定義一個數(shù)組用來接受value for(var key in obj){ keys.push(key); values.push(obj[key]);//取得value console.log(eval("obj."+key));//循環(huán)內(nèi)逐一打印value值 } console.log(obj.name);//wjy console.log("keys is :"+keys+" and values is :"+values); //keys is : name,age,sex and values is : wjy,26,female
(2)在Object.prototype中添加屬性
使用 for in 循環(huán)遍歷對象的屬性時,原型鏈上的所有屬性都將被訪問。例如我們給Object.prototype添加一個bar屬性,那么在for in 循環(huán)的時候,就會把這屬性給循環(huán)出來:
Object.prototype.bar = 10;// 修改Object.prototype var obj={"name":"wjy","age":26,"sex":"female"};//定義一個object對象 var keys=[];//定義一個數(shù)組用來接受key var values=[];//定義一個數(shù)組用來接受value for(var key in obj){ keys.push(key); values.push(obj[key]);//取得value } console.log("keys is :"+keys+" and values is :"+values); //keys is : name,age,sex,bar and values is : wjy,26,female,10
(3)避免原型對象擴展對循環(huán)對象時帶來的干擾
推薦總是使用 hasOwnProperty 方法,這將會避免原型對象擴展帶來的干擾:
function allpro(obj){ var keys=[]; var values=[]; for(var key in obj){ //只遍歷對象自身的屬性,而不包含繼承于原型鏈上的屬性。 if (obj.hasOwnProperty(key) === true){ keys.push(key); values.push(obj[key]); } } console.log("keys is :"+keys+" and values is :"+values); } Object.prototype.bar = 1;// 修改Object.prototype var o={"name":"wjy","age":26,"sex":"female"};//定義一個object對象 allpro(o); //keys is : name,age,sex and values is: wjy,26,female
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/94199.html
1_(去除ArrayList中重復(fù)字符串元素方式)* A:案例演示 需求:ArrayList去除集合中字符串的重復(fù)值(字符串的內(nèi)容相同) 思路:創(chuàng)建新集合方式 import java.util.ArrayList; import java.util.Iterator; public class ArrayList_1_demo { /* 創(chuàng)建新集合將重復(fù)元素去掉 * 1.明...
摘要:如果團隊成員文件合并,可能會讓團隊其他成員的代碼報錯推薦函數(shù)內(nèi)部,即布局作用域內(nèi)使用相等兩個等號判斷相等,容易出現(xiàn)強制類型轉(zhuǎn)換推薦使用三個等于號用來判斷相等原始包裝類型避免使用參考資料編寫可維護的 本文為《編寫可維護的JavaScript》讀書筆記 1、變量 變量名遵守駝峰大小寫命名法 命名前綴可為名詞,這樣可與函數(shù)名區(qū)分 常量利用大寫字母和下劃線(用來分隔單詞)來命名 所有變量聲明...
摘要:與雖然只能生成整數(shù),但是當想生成小數(shù)的時候有兩種方式,調(diào)用第三方包。將生成的每個除以來生成對應(yīng)的小數(shù)。 0.前置說明 1.運行環(huán)境:Win7虛擬機、python2.7(anacoda版) 2.本文大部分內(nèi)容引用此參考文獻并極力推薦根據(jù)此人博客學(xué)習(xí)python:http://www.cnblogs.com/vamei/archive/2012/07/09/2582435.html ...
摘要:中雙感嘆號的作用一般用于將后面的表達式強制轉(zhuǎn)化為布爾類型。通過實現(xiàn)類式繼承繼承對象已經(jīng)原型對象屬性父類父類的方法子類調(diào)用父類的構(gòu)造函數(shù)。 js基礎(chǔ)對象屬性方法 Object.keys() Object.keys()方法會返回一個由一個給定對象的自身可枚舉屬性組成的數(shù)組,數(shù)組中屬性名的排列順序和使用 for...in 循環(huán)遍歷改對象時返回的順序一致(兩者的主要區(qū)別是一個for-in 循環(huán)...
閱讀 2559·2021-10-09 09:44
閱讀 651·2019-08-30 15:44
閱讀 3010·2019-08-29 18:46
閱讀 1146·2019-08-29 18:38
閱讀 569·2019-08-26 10:44
閱讀 2446·2019-08-23 16:07
閱讀 1107·2019-08-23 15:38
閱讀 4151·2019-08-23 14:02