【JavaScript】中列舉物件中的屬性
阿新 • • 發佈:2018-12-23
有時候,拿到別人的程式碼,我們並不知道某一個物件擁有哪些屬性和屬性值,這個時候別慌,我們可以通過for in 語句來獲取物件裡的屬性和屬性值,(最底部有原始碼,可複製)
語法:for(變數名 in 物件名){
(迴圈體)
}
下面是程式碼圖,有很詳細的註釋。
控制檯輸出三次,表示該物件擁有三個屬性。
有人就會問了:我要這有啥用,能不能完全獲取物件中的具體屬性和屬性值?
答案肯定是能的!看下面程式碼:
註釋寫的很詳細了,迴圈體每次執行時,都會將物件的某一個屬性名賦值給變數 a ,然後我們列印這個變數a,物件 obj 所擁有的屬性就全部打印出來了。
然後我們還能把它所對應的屬性值給打印出來,看如下程式碼(看紅色方框部分):我們是不能用obj.a 的,控制檯輸出的全是underfind,因為a是個變數,所以我們通過加一箇中括號的方式來讓obj獲取到該物件名,從而獲取到屬性對應的屬性值。
原始碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>使用for in 語句打印出物件中的屬性</title>
<script type="text/javascript">
//利用json語法建立物件
var obj={
name:"鄧超",
gender:"男",
age:20
}
/*我如果想要知道obj有哪些屬性的話就要用到for in語句了
* 語法: for(變數名 in 物件名){}
*/
for(var a in obj){
//每次執行時,會將物件中的一個屬性的名字賦值給變數a,所以我們通過列印變數a來獲取物件中的屬性
console.log(a);
//列印屬性值
console.log(obj[a])
}
</script>
</head>
<body>
</body>
</html>