【问题标题】:How to validate whether a string value is a valid date or not?如何验证字符串值是否为有效日期?
【发布时间】:2021-05-19 00:48:07
【问题描述】:

我想验证作为日期的字符串值在 nodejs 模式对象中是否有效。我用于其他验证的包是来自庆祝的 Joi 包。另外,我不希望将值的类型更改为日期,因此不能使用 Joi.date()。

【问题讨论】:

    标签: node.js momentjs joi


    【解决方案1】:

    如果你将Joi.dateany.raw([enabled])结合使用,你仍然可以使用它:

    输出原始未触及的值而不是转换后的值 其中:

    enabled - 如果为 true,则返回原始结果, 否则为验证值。默认为真。

    请注意,原始值仅在验证后应用,并且任何 对该值的引用使用的是经过验证的值,而不是原始值。

    例如:

    const timestampSchema = Joi.date().timestamp();
    timestampSchema.validate('12376834097810'); 
    // { error: null, value: Sat Mar 17 2362 04:28:17 GMT-0500 (CDT) }
    
    const rawTimestampSchema = Joi.date().timestamp().raw();
    rawTimestampSchema.validate('12376834097810'); 
    // { error: null, value: '12376834097810' }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-15
      相关资源
      最近更新 更多