解析和验证可选的函数参数

时间:2015-07-19 20:37:00

标签: javascript function validation types arguments

我正在寻找一种管理函数参数的简单方法。这就是我要找的东西。

  • 指定类型或潜在类型
  • 指定默认值
  • 传入验证函数或(函数数组),如果为false(或其中一个函数为false)则抛出

我遇到了ArgueJs,它有很多很棒的功能,但它没有做到以下几点。

该特定图书馆尚未维护或更新2年。所以它有点过时了。

我只是想知道是否存在一般管理参数的主流方式,总是有很多开销。理想情况下,您可以使用chriso/validator.js中的验证函数进行验证。

1 个答案:

答案 0 :(得分:0)

我刚刚遇到过这个

https://github.com/okunishinishi/node-argx

这是一个例子

var express = require("express")
var argx = require('argx')
var _ = require("underscore")

function example(/*Router, method, url, middleware*/) {
  var args = argx(arguments)
  var Router = args.shift('function') || express.Router
  var method = args.shift('string') || "get"
  var url = args.shift('string') || "/"
  var middleware = _.flatten([args.remain()])

  console.log(Router)
  console.log(method)
  console.log(url)
  console.log(middleware)
}

验证可以在不同层进行。