作者:BLUE
日期:2017-11-19
描述:indexedDB类的API文档,所有方法均为实例方法
- new IndexedDB({})
- deletedb(name)
- closeDB(db)
- addData(db, storename, data[, callback])
- putData(db, storename, data[, callback])
- getByKey(db, storename, key[, callback])
- deleteByKey(db, storename, key)
- clearData(db, storename)
- getDataByCur(db, storename[, keyRange][, callback])
- getDataByCurInd(db, storename, indexKey[,keyRange][, callback])
- edtDataByCur(db, storename[, keyRange, params[, callback]])
- edtDataByCurInd(db, storename, indexKey[, keyRange, params[, callback]])
- delDataByCur(db, storename, keyRange[, callback])
- delDataByCurInd(db, storename, indexKey, keyRange[, callback])
- eq(x)
- lt(x)
- lte(x)
- gt(x)
- gte(x)
- ltgt(x, y)
- ltegt(x, y)
- ltgte(x, y)
- ltegte(x, y)
# new IndexedDB({})
创建indexedDB实例
- dbname 【数据库名称】 默认“db_index”
- version 【数据库版本】 默认“1”
- dbstore 【对象存储空间JSON】(name:存储空间名称,keyPath:主键字段,indexKey:如果要设置索引则添加该索引字段)
- callback 【回调函数】 回调参数为数据库对象
let db=null;
const idb = new IndexedDB({
dbname: "db_index",
version: "1",
dbstore: [{ name: 'teachers', keyPath: "id", indexKey: "age" }],
callback(db1) { db = db1; }
});
# deletedb(name)
删除数据库
- name 【数据库名称】
# closeDB(db)
关闭数据库
- db 【数据库对象】
# addData(db, storename, data[, callback])
添加数据到存储空间,如果遇到相同的主键会抛出错误
- db 【数据库对象】
- storename 【存储空间名称】
- data 【数据JSON】
- callback 【成功后的回调】
- db 【数据库对象】
- storename 【存储空间名称】
- data 【数据JSON】
- callback 【成功后的回调】
- db 【数据库对象】
- storename 【存储空间名称】
- key 【主键值】
- callback 【回调函数,参数为数据对象】
- db 【数据库对象】
- storename 【存储空间名称】
- key 【主键值】
- db 【数据库对象】
- storename 【存储空间名称】
- db 【数据库对象】
- storename 【存储空间名称】
- keyRange 【游标条件IDBKeyRange对象或者其他】
- callback 【回调函数,参数为数据JSON】
- db 【数据库对象】
- storename 【存储空间名称】
- indexKey 【索引字段名称】
- keyRange 【游标条件IDBKeyRange对象或者其他】
- callback 【回调函数,参数为数据JSON】
- db 【数据库对象】
- storename 【存储空间名称】
- keyRange 【游标条件IDBKeyRange对象或者其他】
- params 【修改数据的参数对象】
- callback 【更新成功回调】
- db 【数据库对象】
- storename 【存储空间名称】
- indexKey 【索引字段名称】
- keyRange 【游标条件IDBKeyRange对象或者其他】
- params 【修改数据的参数对象】
- callback 【更新成功回调】
- db 【数据库对象】
- storename 【存储空间名称】
- keyRange 【游标条件IDBKeyRange对象或者其他】
- callback 【删除成功回调】
- db 【数据库对象】
- storename 【存储空间名称】
- indexKey 【索引字段名称】
- keyRange 【游标条件IDBKeyRange对象或者其他】
- callback 【删除成功回调】
var teachers = [ {id: 1001,name: "Byron",age: 21}, {id: 1002,name: "Frank",age: 22}, {id: 1003,name: "Aaron",age: 23} ]; idb.addData(db, "teachers", teachers, () => { alert("ok") })
# putData(db, storename, data[, callback])
添加数据到存储空间,如果遇到相同的主键会修改原有数据
# getByKey(db, storename, key[, callback])
根据存储空间的键找到对应数据
idb.getByKey(db, "teachers", idb.eq(1002), result => { console.log(result) })
# deleteByKey(db, storename, key)
根据存储空间的键删除某一条记录
# clearData(db, storename)
删除存储空间全部记录
# getDataByCur(db, storename[, keyRange][, callback])
通过游标查询记录
idb.getDataByCur(db, "teachers", idb.eq(1004), result => { console.log(result) })
# getDataByCurInd(db, storename, indexKey[,keyRange][, callback])
通过索引游标查询记录
idb.getDataByCurInd(db, "teachers", "age", 24, result => { console.log(result) })
# edtDataByCur(db, storename[, keyRange, params[, callback]])
通过游标更新记录
idb.edtDataByCur(db, "teachers", 1002, params2, () => { alert("ok") });
# edtDataByCurInd(db, storename, indexKey[, keyRange, params[, callback]])
通过索引游标更新记录
idb.edtDataByCurInd(db, "teachers", "age", idb.ltegt(21, 24), { name: "PINK" }, () => { alert("OK") })
# delDataByCur(db, storename, keyRange[, callback])
通过游标删除记录
# delDataByCurInd(db, storename, indexKey, keyRange[, callback])
通过索引游标删除记录
每个方法都返回一个KeyRange对象
操作 翻译 函数 等于 keys = x eq(x) 小于 All keys < x lt(x) 小于等于 All keys ≤ x lte(x) 大于 All keys > x gt(x) 大于等于 All keys ≥ x gte(x) 大于且小于 All keys > x &&< y ltgt(x, y) 大于等于且小于 All keys ≥ x &&< y ltegt(x, y) 大于且小于等于 All keys > x && ≤ y ltgte(x, y) 大于等于且小于等于 All keys ≥ x && ≤ y ltegte(x, y)