在库中,我使用某些函数可能会返回如下对象:
{
wifiAddress: "abc...",
3GAddress: "abc..."
}
我正在为这些创建一个小的声明文件,但我被困在这里。如何声明第二个键(以数字开头)?
interface AddressPair {
wifiAddress: string,
3GAddress: string // <-- ERROR here
}
答案 0 :(得分:3)
语法不是这个吗?
interface AddressPair {
wifiAddress: string;
3GAddress: string;
}
您需要使用;
结束每个声明。
答案 1 :(得分:0)
Javascript允许哈希对象使用任意字符串键。我不确定Typescript,但你可以试试这个:
{
wifiAddress: "abc...",
'3GAddress': "abc..."
}
答案 2 :(得分:0)
我已经意识到这有用的先前答案:
interface AddressPair {
wifiAddress: string;
'3GAddress': string;
}
在这种情况下,3GAddress
是特殊的,因此无法通过点表示法访问它。因为我需要使用括号表示法编译器(自动完成)无法帮助我:
var a: AddressPair = { ... }
a.3GAddress; // With dot notation I would get autocomplete (for any other key)
// but in this case syntax it leads to an error.
a['3GAddress']; // Correct but no autocomplete :(