gpt4 book ai didi

javascript - 你如何在 typescript 中声明一个对象数组?

转载 作者:搜寻专家 更新时间:2023-10-30 21:03:22 26 4
gpt4 key购买 nike

我想指定一个将对象数组作为参数的函数,但我没有为该对象定义特定类型(一种“匿名类型”)

bagTotal = (products) => {
// function does stuff
}

我知道我可以做到:

bagTotal = (products: any[]) => {
// function does stuff
}

但这比我想要的要宽松一些:严格使用 typescript 。

products 是一组外观相同的对象;所有对象都有名称、价格和描述。

我该如何声明?

我想做类似的事情

bagTotal = (products: [{name: string, price: number, description: string}]) => {
// function does stuff
}

但那是不对的。我该如何声明?

最佳答案

你快到了,括号的位置是错误的:

{name: string, price: number, description: string}[]

您使用它的方式并不完全错误,但它有其他含义:它意味着一个数组只有一个这种类型的项目。


我还建议将它提取到一个接口(interface)中,这样可以使类型可重用并且更易于阅读:

interface Product {
name: string;
price: number;
description: string;
}

const products: Product[];

关于javascript - 你如何在 typescript 中声明一个对象数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53964694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com