【发布时间】:2015-09-01 07:17:31
【问题描述】:
我正在寻找一个客户端 JavaScript 库,它可以让我使用某种 Option 类型(例如 java.lang.Optional)编写类似于我可以在其他语言中执行的代码。
我的目标是避免 null/undefined 检查客户端代码并使 API 更加明确。
这是我希望能够编写的 API:
var dictionary = {
key1: 'value1',
key2: 'value2'
}
function getValue(key){
var value = dictionary[key];
if(value !== null && value !== undefined)
return Optional.of(value);
else
return Optional.empty();
}
这是客户端代码:
var value = getValue('key3');
if(value.isPresent())
console.log('got a value: ' + value.get().toUpperCase());
else
console.log('no value found!');
或者有时:
var value = getValue('unknown key').orElse('default value');
如果我在Optional.empty() 值上调用get(),它应该抛出某种Error。
如果我在null 或undefined 上调用Optional.of(),它也应该抛出。
【问题讨论】:
-
我觉得选项虽然是明智的,但并不是 Javascript“社区”真正喜欢的东西。 Purescript, on the other hand...
标签: javascript java null undefined optional