нам нужна помощь для решения этой проблемы, никто на нашем предприятии не смог это сделать.
У нас есть такая строка:
- name
- type
- string
- validation
- required
- minLength
- 4
- maxLength
- 20
- optionIn
- option1
- option2
- option3
- option4
- password
- type
- string
- validation
- required
- minLength
- 6
- maxLength
- 30
- date
- type
- date
И нам нужно сгенерироватьобъект, подобный этому:
{
name: {
type: 'string',
validation: {
required: true,
minLength: 4,
maxLength: 20,
optionIn: ['option1', 'option2', 'option3', 'option4']
}
},
password: {
type: 'string',
validation: {
required: true,
minLength: 6,
maxLength: 30
}
},
date: {
type: 'date'
}
}
Несколько вещей, которые делают это действительно сложной задачей:
Если последний вложенный элемент - только один, это делает его значением предыдущего ключа.Если последний вложенный элемент больше одного, он становится массивом, а массив является значением предыдущего ключа.
Редактировать: Спасибо @adiga за понимание, пример 'required' становится объектомсо значением true, потому что его товарищи имеют вложенный элемент
Это сложная и сложная задача, библиотеки доступны для использования, если вам нужно.