Dùng map() duyệt mảng, kiểm tra typeof thuộc tính lồng nhau trước khi truy cập để tránh lỗi.
Ví dụ
var details = [
{
id: "101",
firstName: "John",
lastName: "Smith",
age: 25,
countryName: "US",
subjectDetails: {
subjectId: "Java-101",
subjectName: "Introduction to Java"
}
},
{
"uniqueId": "details_10001"
}
];
details.map(obj => {
if (typeof obj.subjectDetails !== 'undefined') {
console.log("Subject Name: " + obj.subjectDetails.subjectName);
}
});
Cách chạy
node demo.js
Kết quả
Subject Name: Introduction to Java
Cách an toàn hơn (optional chaining ES2020):
details.forEach(obj => {
console.log(obj.subjectDetails?.subjectName ?? "N/A");
});
Lưu ý: map() ở đây chỉ dùng để lặp (side effect), không dùng kết quả trả về. Nên dùng forEach() cho rõ ý图.