一款参考 C++ STL 实现的 JavaScript 标准数据结构库
English | 简体中文
length
这样的属性我们和其他数据结构库进行了基准测试,在某些场景我们甚至超过了当前最流行的库
查看 benchmark 以获取更多信息
![]() IE / Edge |
![]() Firefox |
![]() Chrome |
![]() Safari |
![]() Opera |
![]() NodeJs |
---|---|---|---|---|---|
Edge 12 | 36 | 49 | 10 | 36 | 10 |
使用 cdn 直接引入
使用 npm 下载
npm install js-sdsl
或者根据需要安装以下任意单个包
您可以访问我们的主页获取更多信息
并且我们提供了完整的 API 文档供您参考
想要查看从前版本的文档,请访问:
https://js-sdsl.org/js-sdsl/previous/v${version}/index.html
例如:
https://js-sdsl.org/js-sdsl/previous/v4.1.5/index.html
<script src="https://unpkg.com/js-sdsl/dist/umd/js-sdsl.min.js"></script>
<script>
const {
Vector,
Stack,
Queue,
LinkList,
Deque,
PriorityQueue,
OrderedSet,
OrderedMap,
HashSet,
HashMap
} = sdsl;
const myOrderedMap = new OrderedMap();
myOrderedMap.setElement(1, 2);
console.log(myOrderedMap.getElementByKey(1)); // 2
</script>
// esModule
import { OrderedMap } from 'js-sdsl';
// commonJs
const { OrderedMap } = require('js-sdsl');
const myOrderedMap = new OrderedMap();
myOrderedMap.setElement(1, 2);
console.log(myOrderedMap.getElementByKey(1)); // 2
我们使用 karma 和 mocha 框架进行单元测试,并同步到 coveralls 上,你可以使用 yarn test:unit
命令来重建它
我们对于编写的所有 API 进行了性能测试,并将结果同步到了 gh-pages/performance.md
中,你可以通过 yarn test:performance
命令来重现它
您也可以访问我们的网站来获取结果
可以使用 Gitpod 进行在线编辑:
或者在本地使用以下命令获取源码进行开发:
$ git clone https://github.com/js-sdsl/js-sdsl.git
$ cd js-sdsl
$ npm install
$ npm run dev # development mode
之后您在 dist/cjs
文件夹中可以看到在 dev
模式下打包生成的产物
我们欢迎所有的开发人员提交 issue 或 pull request,阅读贡献者指南可能会有所帮助
感谢对本项目做出贡献的开发者们:
Takatoshi Kondo 💻 ⚠️ |
noname 💻 |
本项目遵循 all-contributors 规范。 欢迎任何形式的贡献!
特别鸣谢下列赞助商和支持者们,他们在非常早期的时候为我们提供了支持:
同样感谢这些赞助商和支持者们: