2015-10-14 150 views
0

我已經看過其他文章的想法和解決方案,他們提供了幫助,但對於我的特定問題,我仍然無法讓我的工作。我有兩個對象,我推入一個數組。在[FIRST TRY]下,我可以遍歷並在警告框中顯示正確的值,但是,我無法訪問我的對象的每個屬性。在我的第二次嘗試中,我嘗試使用jquery來訪問它們,但在我的警報框中,變量顯示爲「未定義」。任何幫助,將不勝感激。提前致謝。通過一系列對象循環訪問各個屬性

file.js

var x_array=[] 

var objC = { 
firstname: "Jane", 
lastname: "Doe", 
email: "[email protected]" 
}; 

var objD = { 
firstname: "Jordan", 
lastname: "Michael", 
email: "[email protected]" 
}; 
x_array.push(objC); 
x_array.push(objD); 

// FIRST TRY 
for (var i = 0; i < x_array.length; i++) { 
    var object = x_array[i]; 
for (var property in object) { 
    alert("Name: "+ i + ':' + property + '=' + object[property]); 
    } 
} 
    alert("Begin Trying it another way"); // SECOND TRY 

$(jQuery.parseJSON(JSON.stringify(MyArray))).each(function() { 
var HisName = this.name; 
var HisAge = this.age; 
alert("The persons name is "+HisName+' and their age is ' +HisAge); 
}); 
+0

您的代碼工程:http://jsfiddle.net/6hpwn9cq/ – tymeJV

回答

0

嘗試此,它通過循環通過它的所有密鑰值對中的陣列和循環中的所有對象。

var x_array=[] 

var objC = { 
firstname: "Jane", 
lastname: "Doe", 
email: "[email protected]" 
}; 

var objD = { 
firstname: "Jordan", 
lastname: "Michael", 
email: "[email protected]" 
}; 
x_array.push(objC); 
x_array.push(objD); 

// FIRST TRY 
for (var i = 0; i < x_array.length; i++) { 
    var objStr = " " 
    Object.keys(x_array[i]).forEach(function(key) { 
     if(key !="email"){ 
      objStr += key + ":" + x_array[i][key] + " "; 
     } 
    }); 
    alert(objStr); 
} 
+0

這很好。但是如果我只想顯示名字和姓氏而忽略電子郵件,這可能嗎?我可以以某種方式識別每個關鍵值對嗎? – user1898629

+0

@ user1898629我已更新代碼 – Nakib

+0

這個作品我也相信。我只是想調整它的格式並將其附加到一個部分。雖然謝謝你的幫助。從這我應該能夠做出我將來可能需要的任何其他更改。謝謝 – user1898629

相關問題