使用分层标记树标记对象

时间:2018-12-10 12:49:56

标签: javascript node.js performance

我有一个使用数百个文本标签来描述对象的应用程序。

到目前为止,我只是在对象实例中使用字符串数组来存储标签。

但是我现在需要使用分层树结构中的标签-例如:

tags +-- TagA +-- TagB +-- TagBA +-- TagBAA +-- TagBAB +-- TagBAC +-- TagBAD

因此,如果我将一个实例标记为TagBAC,则也可以推断出TagBATagB

这让我想到,我可以使用位标志和按位操作的pheraps:

tags +-- TagA +-- TagB +-- TagBA 15 (sum of flags below) +-- TagBAA 1 +-- TagBAB 2 +-- TagBAC 4 +-- TagBAD 8

从概念上讲,这会很好地工作(而且我认为它会非常快地执行),但是我的应用程序使用了太多标记,无法容纳javascript的32位数字范围。

我可以做些什么来使用类似的方法,这种方法没有那么小的边界,但仍然表现良好?我正在寻找一种针对执行速度进行了优化的方法。

0 个答案:

没有答案