آبجکت/از نسخه
1.38.0get
مقدار یک ویژگی را بر اساس کلید از یک شیء دریافت میکند و اگر مقدار ویژگی null یا undefined باشد، مقدار پیشفرض را برمیگرداند.
get(object, path, defaultValue):T[K] | undefinedنحوه عملکرد
این تابع مقدار ویژگی را با استفاده از object[path] میخواند. اگر مقدار بهدستآمده null یا undefined باشد، defaultValue را برمیگرداند. سایر مقادیر falsy مانند 0، false و رشته خالی بدون تغییر حفظ میشوند.
دسترسی مستقیم به ویژگی
پارامتر path یک کلید از object است (K extends keyof T)، بنابراین این utility فقط به ویژگی مستقیم دسترسی دارد و مسیرهای نقطهای یا اشیای تو در تو را پیمایش نمیکند.
پارامترها
objectTالزامیشیئی که باید مقدار ویژگی از آن خوانده شود.
pathKالزامیکلید ویژگی موردنظر برای دریافت مقدار.
defaultValueT[K]اختیاریمقداری که زمانی که مقدار ویژگی null یا undefined باشد برگردانده میشود.
مقدار بازگشتی
T[K] | undefinedمقدار ویژگی، یا در صورت null یا undefined بودن مقدار ویژگی، مقدار پیشفرض.
مثالها
01
استفاده پایه
TypeScript
const user = {
name: "Amir",
age: 22,
};
get(user, "name");
// "Amir"02
استفاده از مقدار پیشفرض
TypeScript
const user = {
name: "Amir",
};
get(user, "age", 18);
// 1803
مقادیر موجود حفظ میشوند
TypeScript
const user = {
name: "Amir",
age: 22,
};
get(user, "age", 18);
// 2204
مقادیر null از مقدار پیشفرض استفاده میکنند
TypeScript
const user = {
name: null as string | null,
};
get(user, "name", "Unknown");
// "Unknown"05
مقادیر undefined از مقدار پیشفرض استفاده میکنند
TypeScript
const user = {
name: undefined as string | undefined,
};
get(user, "name", "Unknown");
// "Unknown"06
مقادیر falsy حفظ میشوند
TypeScript
const data = {
count: 0,
active: false,
name: "",
};
get(data, "count", 10);
// 0
get(data, "active", true);
// false
get(data, "name", "Unknown");
// ""07
بدون مقدار پیشفرض
TypeScript
const user = {
name: "Amir",
};
get(user, "age");
// undefined08
اشیای تو در تو فقط با کلید مستقیم قابل دسترسی هستند
TypeScript
const user = {
profile: {
name: "Amir",
},
};
get(user, "profile");
// { name: "Amir" }
// This implementation does not support:
// get(user, "profile.name")ساخته شده با@cyref/js·مستندات رسمی