https://github.com/yanhaijing/data.js
data.js 是带有消息通知的数据中心,我称其为会说话的数据。旨在让编程变得简单,世界变得美好。
https://github.com/yanhaijing/data.js
Last synced: 2 months ago
JSON representation
data.js 是带有消息通知的数据中心,我称其为会说话的数据。旨在让编程变得简单,世界变得美好。
- Host: GitHub
- URL: https://github.com/yanhaijing/data.js
- Owner: yanhaijing
- License: mit
- Created: 2014-10-17T04:23:00.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2020-08-29T10:33:41.000Z (almost 5 years ago)
- Last Synced: 2025-03-29T13:08:33.059Z (2 months ago)
- Language: JavaScript
- Homepage:
- Size: 269 KB
- Stars: 379
- Watchers: 27
- Forks: 78
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: MIT-LICENSE.txt
Awesome Lists containing this project
README
# [data.js](https://github.com/yanhaijing/data.js) [](https://travis-ci.org/yanhaijing/data.js) [](https://github.com/yanhaijing/data.js/blob/master/MIT-LICENSE.txt) [](https://github.com/yanhaijing/data.js/releases/tag/v0.3.0)
data.js 是带有消息通知的数据中心,我称其为会说话的数据。旨在让编程变得简单,世界变得美好。
## 特性
1. 全局数据中心,可以用来存放数据,在不同程序中共享。
2. 将程序的耦合度,变为数据耦合,采用隐式调用风格,发挥js事件风格。## 兼容性
- Node 0.10+
- Safari 6+ (Mac)
- iOS 5+ Safari
- Chrome 23+ (Windows, Mac, Android, iOS, Linux, Chrome OS)
- Firefox 4+ (Windows, Mac, Android, Linux)
- Internet Explorer 6+ (Windows, Windows Phone)
- Opera 10+ (Windows, linux, Android)## 下载
第一种方法,推荐使用npm安装和更新
$ npm install --save data_js第二种方法,或者你也可以在GitHub,下载源文件或压缩包
## 如何使用?
支持全局变量、AMD、commonjs、es6等模块系统### 传统用法
window.Data
### AMD
require(['data'], function (Data) {
Data
});### commonjs
var Data = require('data_js')
## 快速上手
Data常用接口只有三个,非常简单:
```javascript
Data.sub('set', 'a', function (e) {console.log(e.data)});//订阅消息,当a被设置时,会派发消息Data.set('a', 1);//存入数据
Data.get('a');//读取数据
```更多例子,请见目录下的[demo](demo)目录。
## 文档
[API](doc/api.md)
## 质量保证
data.js的代码运行于ecmascript严格模式下,jshint验证,完整的单元测试,并使用travis保证。测试代码见test目录下。
## 性能
data.js的存入和取出,都是对数据的一次深拷贝,同时还要解析数据的键和派发消息,所以性能会有一些损失,但不涉及大批量循环存取不会遇到性能问题。
- [get接口性能](http://jsperf.com/yanhaijing-data-js-get)
- [set接口性能](http://jsperf.com/yanhaijing-data-js-set)## 贡献指南
如果你想为data.js贡献代码,请采用fork + pull request 方式,并在发起pr前先将master上超前的代码rebase到自己的分支上。
在目录运行如下命令,完成验证测试编译过程,确保无误:
$ npm install -g mocha@~2.3.4 # 安装mocha
$ npm install # 安装依赖
$ mocha test # 运行测试代码$ npm install -g gulp@~3.9.0 # 安装gulp
# gulp lint # 验证代码风格### 发布npm
$ npm publish## 贡献者
- [yanhaijing](http://yanhaijing.com "yanhaijing's Blog")
- [Jerry Zou](https://github.com/zry656565)## 报告问题
- [Issues](https://github.com/yanhaijing/data.js/issues "报告问题")
## 更新日志
[更新日志](CHANGELOG.md)