Object 內置對象

對象LevelDB

LevelDB 數據庫對象

用以創建和管理字典對象,創建方法:

1 2
var db = require("db"); var test = new db.openLevelDB("test.db");

繼承關係

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<this>LevelDB|has();get();mget();set();mset();mremove();remove();forEach();between();begin();commit();close()] [object] <:- [LevelDB] object toString() toJSON() LevelDB has() get() mget() set() mset() mremove() remove() forEach() between() begin() commit() close()

成員函數

has

檢查數據庫內是否存在指定鍵值的數據

1
Boolean LevelDB.has(Buffer key) async;

調用參數:

  • key: Buffer, 指定要檢查的鍵值

返回結果:

  • Boolean, 返回鍵值是否存在

get

查詢指定鍵值的值

1
Buffer LevelDB.get(Buffer key) async;

調用參數:

  • key: Buffer, 指定要查詢的鍵值

返回結果:

  • Buffer, 返回鍵值所對應的值,若不存在,則返回null

mget

查詢一組指定鍵值的值

1
NArray LevelDB.mget(Array keys);

調用參數:

  • keys: Array, 指定要查詢的鍵值數組

返回結果:

  • NArray, 返回包含鍵值得數組

set

設定一個鍵值數據,鍵值不存在則插入新數據

1 2
LevelDB.set(Buffer key, Buffer value) async;

調用參數:

  • key: Buffer, 指定要設定的鍵值
  • value: Buffer, 指定要設定的數據

mset

設定一組鍵值數據,鍵值不存在則插入新數據

1
LevelDB.mset(Object map);

調用參數:

  • map: Object, 指定要設定的鍵值數據字典

mremove

刪除一組指定鍵值的值

1
LevelDB.mremove(Array keys);

調用參數:

  • keys: Array, 指定要刪除的鍵值數組

remove

刪除指定鍵值的全部值

1
LevelDB.remove(Buffer key) async;

調用參數:

  • key: Buffer, 指定要刪除的鍵值

forEach

枚舉數據庫中所有的鍵值對

1
LevelDB.forEach(Function func);

調用參數:

  • func: Function, 枚舉回調函數

回調函數有兩個參數,(value, key)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.forEach(function(value, key) { ... });

between

枚舉數據庫中鍵值在from 和to 之間的鍵值對

1 2 3
LevelDB.between(Buffer from, Buffer to, Function func);

調用參數:

  • from: Buffer, 枚舉的最小鍵值,枚舉時包含此鍵值
  • to: Buffer, 枚舉的最大鍵值,枚舉時不包含此鍵值
  • func: Function, 枚舉回調函數

回調函數有兩個參數,(value, key)

1 2 3 4 5 6
var db = require("db"); var test = new db.openLevelDB("test.db"); test.between("aaa", "bbb", function(value, key) { ... });

begin

在當前數據庫上開啟一個事務

1
LevelDB LevelDB.begin();

返回結果:

  • LevelDB, 返回一個開啟的事務對象

commit

提交當前事務

1
LevelDB.commit();

close

關閉當前數據庫連接或事務

1
LevelDB.close() async;

toString

返回對象的字符串表示,一般返回"[Native Object]",對象可以根據自己的特性重新實現

1
String LevelDB.toString();

返回結果:

  • String, 返回對象的字符串表示

toJSON

返回對象的JSON 格式表示,一般返回對象定義的可讀屬性集合

1
Value LevelDB.toJSON(String key = "");

調用參數:

  • key: String, 未使用

返回結果:

  • Value, 返回包含可JSON 序列化的值