我需要一个与Java中的Set类似的API的集合。
这个实现:
http://jsclass.jcoglan.com/set.html
需要使用RequireJS,这让我的Java头脑目前过于扭曲。发布一个作为Set功能的函数会是一个很好的答案。或者提供一个Google Set或其他一些已经创建了这个代码的技术巨头的链接。
谷歌的Closure怎么样?名字让我感到困惑,但是它有一个set。
我需要一个与Java中的Set类似的API的集合。
这个实现:
http://jsclass.jcoglan.com/set.html
需要使用RequireJS,这让我的Java头脑目前过于扭曲。在我看来,无论是什么 java.util.Set 可以实现的功能,都可以使用简单的 JavaScript 对象来完成。我不明白为什么你需要额外的库:
// empty set
var basket = {};
// adding object to set
basket['apple'] = true;
basket['banana'] = true;
basket['orange'] = true;
basket['apple'] = true;
// iterating through set contents, should print:
// apple
// banana
// orange
for(var fruit in basket)
console.log(fruit);
// check if an element exist
if(basket['pineapple']) {
console.log('has pineapple');
} else {
console.log('no pineapple');
}
// remove element from set
delete basket['apple'];
Object.toString
转换为常量字符串的对象,则会变得更加复杂。在Python中,我使用set
比使用数组更多,我真的很想念它。我想Python的集合也不是真正的集合,它们是由其值的内存地址隐式索引的哈希表,但至少我不必自己管理键或哈希函数。我仍然没有找到一个我真正喜欢的解决方案。 - Dan Ross