نمایش شی (Object Display)
نمایش شی (Object Display) یعنی اینکه مقدار یک «شیء (Object)» را چطور ببینیم. نمایش مستقیم شیء فقط [object Object] می دهد. بنابراین باید ویژگی ها را رشته کنیم یا به آرایه تبدیل کنیم.
نمایش مستقیم شیء چه می دهد؟
وقتی خود شیء را چاپ کنی، متن کلی می بینی؛ نه جزئیات.
const person = {
name: "John",
age: 30,
city: "New York"
};
let text = person;
نمایش ویژگی ها با نام
ساده ترین راه، چسباندن ویژگی ها در یک رشته است.
const person = {
name: "John",
age: 30,
city: "New York"
};
let text = person.name + "," + person.age + "," + person.city;
حلقه for..in روی شیء
با for..in می توانی همه ویژگی ها را پیمایش کنی.
const person = {
name: "John",
age: 30,
city: "New York"
};
let text = "";
for (let x in person) {
text += person[x] + " ";
}
نکته: داخل حلقه از person[x] استفاده کن؛ person.x کار نمی کند.
استفاده از Object.values()
این متد، مقادیر را به آرایه تبدیل می کند. سپس راحت رشته کن.
const person = {
name: "John",
age: 30,
city: "New York"
};
const myArray = Object.values(person);
let text = myArray.toString();
استفاده از Object.entries()
این متد جفت های کلید/مقدار را می دهد؛ برای حلقه عالی است.
const fruits = { Bananas: 300, Oranges: 200, Apples: 500 };
let text = "";
for (let [fruit, value] of Object.entries(fruits)) {
text += fruit + ": " + value + "<br>";
}
استفاده از JSON.stringify()
تابع JSON.stringify() شیء را به رشته JSON تبدیل می کند.
const person = {
name: "John",
age: 30,
city: "New York"
};
let text = JSON.stringify(person);
گام های عملی
- یک شیء ساده بساز و مستقیم چاپ کن.
- با نام ویژگی ها، رشته خلاصه بساز.
- با
for..inهمه مقادیر را جمع کن. - با
Object.values()آرایه بگیر و چاپ کن. - با
JSON.stringify()خروجی JSON بگیر.
جمع بندی سریع
- نمایش مستقیم شیء مفید نیست.
- ویژگی ها را دستی رشته کن.
- حلقه
for..inپیمایش می کند. Object.values()آرایه مقادیر می دهد.JSON.stringify()رشته JSON می سازد.