簡體   English   中英

遍歷對象並獲取其他對象(javascript)

[英]Loop through object and get other objects (javascript)

我有一個對象,其中需要訪問其他對象。 我該怎么做?

var obj = {a: {b: 1}} //I need to have access to b.

正確的for in循環僅返回“ a”。 問題是我不是要在對象內獲取字符串,而是要在對象內獲取對象。

 var obj = { a: {r: "why cant i access"}, } for(var o in obj){ document.getElementById("div").innerHTML = or; } 
 <div id="div"></div> 

如果問題中提到的對象結構是固定的,則可以循環兩次以獲取內部對象。

 var p = {a: {b: 1}} for (var key in p) { for (var k in p[key]) { console.log(k + " -> " + p[key][k] ); } } 

盡管Piyush發布的答案適用於您給定的對象,但它不是通用的,並且不適用於所有類型的對象。 這是一個讀取任何對象屬性的腳本:

var obj = {a: {b:'2'}};

var writeProperties = function (obj) {
  for(var prop in obj) {
    console.log("Property: ",prop,"Property Type:",typeof(obj[prop]));
    if(typeof(obj[prop]) == 'object') {
      writeProperties(obj[prop]);
    } else {
        console.log(prop + ':' + obj[prop]);
    }
    }
}

writeProperties(obj);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM