[英]Check if all properties exist in an object
我有一項服務,其中對象通過,有時可能會丟失一個字段。 我正在構建一種驗證方法來檢查 object 以查看它是否缺少任何屬性。
例如,假設我有一個類型的人
interface person {
name: string;
age: number;
eyeColor: string;
}
一個人型的 object 進來
{
name: "Joe",
eyeColor: "brown",
}
我想拋出一個錯誤,說 object 中缺少“年齡”。 是否可以在 typescript 中檢查 object 是否具有其類型的所有屬性?
有一些圖書館可以為您做到這一點。 例如zod 。
這看起來像這樣:
const Person = z.object({
name: z.string(),
age: z.number(),
eyeColor: z.string()
});
type Person = z.infer<typeof Person>;
然后你可以這樣做:
Person.parse(myData); // throw if it does not match the schema.
還有更多此類庫,您可以在 Google Typescript 運行時驗證中找到更多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.