我有一个对象,它的键是数字,它的值是字符串:
{
0: 'blah',
2: 'blah'
}
Run Code Online (Sandbox Code Playgroud)
这个对象是什么,每个键都是一个包含错误的数组的索引,字符串描述了那个错误。我能找到的最接近这个架构的是:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"0": {
"type": "string"
},
"2": {
"type": "string"
}
},
"required": [
"0",
"2"
]
}
Run Code Online (Sandbox Code Playgroud)
然而,这是不准确的。也许下次只有索引“4”会出错。有没有办法在对象中描述动态键?
你应该试试patternProperties。它允许您为名称与给定正则表达式匹配的所有属性定义架构。
{
"patternProperties": {
"^[0-9]+$": {"type": "string"}
}
}
Run Code Online (Sandbox Code Playgroud)