数据类型
DataSet 支持以下数据类型:
Name |
Description |
Examples |
Boolean |
A JavaScript Boolean |
true
false
|
Number |
A JavaScript Number |
32
2.4
|
String |
A JavaScript String |
"hello world"
"2013-06-28"
|
Date |
A JavaScript Date object |
new Date() new Date(2013, 5, 28) new Date(1372370400000)
|
Moment |
A Moment object, created with moment.js
|
moment()
moment('2013-06-28')
|
ISODate |
A string containing an ISO Date |
new Date().toISOString()
"2013-06-27T22:00:00.000Z"
|
ASPDate |
A string containing an ASP Date |
"/Date(1372370400000)/" "/Date(1198908717056-0700)/"
|
Id |
Id type of items, JavaScript Number or String |
7 "7"
"I'm an id!"
|
数据选择
DataSet.get([id] [, options]);
DataSet.getIds([options]);
DataSet.forEach(callback [, options]);
DataSet.map(callback [, options]);
options 是一个对象,其有如下属性
-
fields
:[String] | Object.<String,String>,数据属性名数组,或包含一个当前属性名和属性值的对象。非必填
-
type
:Object.<String,String>,包含属性名称作为键,数据类型作为值的对象。默认情况下,数据的属性类型不变。当指定属性类型后,数据中该属性值转换为指定类型。非必填。type见末尾
-
filter
:Function,对 DataSet 中的每个数据进行筛选,返回符合条件的数据。非必填
-
order
:String | Function,按字段名称或自定义排序功能对项目进行排序。非必填
-
returnType
:String,默认返回一个数组。Object 类型将返回一个以 ID 为键的 JSON 对象。非必填
演示
// create a DataSet
var data = new vis.DataSet();
data.add([
{id: 1, text: 'item 1', date: '2013-06-20', group: 1, first: true},
{id: 2, text: 'item 2', date: '2013-06-23', group: 2},
{id: 3, text: 'item 3', date: '2013-06-25', group: 2},
{id: 4, text: 'item 4'}
]);
// 返回格式化数据
var items = data.get({
fields: ['id', 'date', 'group'], // 只输出指定的字段
//fields: { id: 1, date: "1", group: "1" }, //值可任意填写,效果同上
type: {
date: 'Date', // 将date字段转换为日期对象
group: 'String' // 将group段转换为字符串
}
});
// 通过 id 检索单个数据
var item1 = dataset.get(1);
// 通过带有 id 的数组来检索一组数据
var items = dataset.get([1, 3, 4]); // retrieve items 1, 3, and 4
// 返回所有数据
var items = dataset.get(); // retrieve all items
// 返回 group 值为 2 的所有数据
var group2 = dataset.get({
filter: function (item) {
return (item.group == 2);
}
});
如何实现对 DataSet 进行新增、删除、修改、筛选操作请看下面内容
visjs 数据的增删改筛选(DataSet & DataView)