Lodash - 深度类型验证
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lodash - 深度类型验证相关的知识,希望对你有一定的参考价值。
是否有一个lodash方法(或简单的javascript中的好方法)用于根据模式定义验证嵌套对象。
例如,给定一个模式定义对象:
{
profile: {
application: {
dates:{
startDate: String,
endDate: String
},
status: String,
jobs: [{
type: Number,
title: String
}]
}
}
}
我想根据定义键入验证此示例对象:
{
"profile": {
"application": {
"dates": {
"startDate": "2011-09-20T15:00:00.000Z",
"endDate": "2018-10-05T15:00:00.000Z"
},
"status": "PENDING",
"jobs": [
{
"type": 5,
"title": "Waiter"
},
{
"type": 1,
"title": "Engineer"
},
{
"type": 33,
"title": "Artist"
},
]
}
}
}
答案
如果你正在使用像标签描述的Node.js,你可以使用一个模式验证库,那里有一些。一个例子是jsonschema。
简单的例子:
var Validator = require('jsonschema').Validator;
var v = new Validator();
var instance = 4;
var schema = {"type": "number"};
console.log(v.validate(instance, schema));
以上是关于Lodash - 深度类型验证的主要内容,如果未能解决你的问题,请参考以下文章