JavaScript模拟java.lang.Optional?
我正在寻找一个客户端JavaScript库,它允许我使用某种类型的Option类型编写类似于我在其他语言中可以执行的代码,例如java.lang.Optional. 我的目标是避免客户端代码中的空/未定义检查并使API更明确. 这是我希望能够编写的API:
这是客户端代码:
或者有时:
如果我在Optional.empty()值上调用get(),它应该抛出某种错误. 最佳答案
鉴于java.lang.Optional source,自己编写一个Optional实现应该不会那么难.
虽然您必须考虑一些差异,即JavaScript区分undefined和null,但您没有Generics这样的概念,并且某些人认为map的Java实现为broken.然而,它实现起来相当容易. 但是,我自己完成了一个实现(optional.js),它适合我的需要,如果你愿意,你可以使用它,但它可能不满足你的所有要求(即()()不会在undefined或null上抛出异常,但get()呢) 用我的代码,你的例子就像
顺便说一句.像这样的代码
对于Optional是无效的用例,因为您可以轻松替换它将null / undefined检查.但是如果你需要像filter,map,flatMap和ifPresent这样的方法,那么你将从中受益更多. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |